pyton之基础数据类型的补充
tuple 元祖中如果只有一个元素并且没有逗号,则他不是元祖而是该元素对应的类型
#实例:
# tu1 = (1)
# print(tu1,type(tu1))
# tu2 = ('alex')
# print(tu2,type(tu2))
# tu3 = '[1,2,3]'
# print(tu3,type(tu3))
#
# tu1 = (1,) #加了逗号,现在就是tuple(元祖)数据类型了
# print(tu1,type(tu1))
# == 比较的是两边的数值是否相同
# is 比较的是内存地址是否相同
# id 查询的是内存地址
# 在 正向 循环一个list中,如果改变的列表的大小,name结果可以和你预想的不一样。
#示例已知:
l1 = [11,22,33,44,55,66]
# print(l1)
#将索引位奇数位置的元素删除:
#第一种:
# del l1[1:-1:2] #第一个是从索引为1:(22是索引1)开始位置 中间不是默认是到结尾 步长是2
# print(l1)
# for循环 #这个是从前往后删除,这个是错误的,报错:IndexError: list assignment index out of range
# for ind in range(len(l1)):
# print(ind,l1)
# if ind % 2 == 1:
# del l1[ind]
# print(l1)
# 倒序删除 #这个是正确的 #不懂
# i = range(len(l1)-1,-1,-1)
# print(len(l1))
# print(i)
#
# for ind in range(len(l1),0,-1):
# print(ind)
# for ind in range(len(l1)-1,-1,-1):
# if ind % 2 ==1:
# del l1[ind]
# print(l1)
dic = {'k1':'v1','k2':'v2','k3':'v3','name':'alex'}
# print(dic)
#将字典中的key键含有'k'元素的所有键值对删除。
#在循环一个字典时,不能改变该字典的大小。 #错误:RuntimeError: dictionary changed size during iteration
# for key in dic:
# if 'k' in key:
# del dic[key]
#正确方法是先定义一个空列表,然后在里面追加,两层for循环
l1=[]
for key in dic:
if 'k' in key:
l1.append(key)
# print(l1)
for key in l1:
del dic[key]
print(dic)
# dict
# dic = dict.fromkeys('abc','alex')
# print(dic) #{'a': 'alex', 'b': 'alex', 'c': 'alex'}
作者:wangkaiok —— 小菜鸟111
出处:http://www.cnblogs.com/wangkaiok/
本文版权归作者和博客园共有,但未经作者同意禁止转载,转载必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。