数据类型补充
一、字符串
print('姓名{name},年龄{age}'.format_map({'age':26,'name':'aaron fan'})) # 以字典的形式传送,结果同format
二、元祖
tu = ('name') tu1 = ('name',) print(tu,type(tu)) # name <class 'str'> 一个小括号括起来的数据,只要不加逗号,本来是什么类型还是什么类型 print(tu1,type(tu1)) # ('name',) <class 'tuple'>
三、列表
当循环列表时,如果在循环中删除某个或者某些元素,列表元素个数改变,索引改变,容易出错
# 删除列表中索引为奇数的元素 li = [11,22,33,44,55] # 方法一 del li[1::2] li = li[0::2] print(li) # 方法二 for i in range(len(li)//2): del li[i+1] print(li) # 方法三 for i in range(len(li)-1,0,-1): if i % 2 == 1: del li[i] print(li)
四、字典
# fromkeys dic = dict.fromkeys([1,2,3],'abc') dic1 = dict.fromkeys('abc','abc') print(dic) # {1: 'abc', 2: 'abc', 3: 'abc'} print(dic1) # {'a': 'abc', 'c': 'abc', 'b': 'abc'} dic = dict.fromkeys(['barry','alex'],[]) print(dic) # {'alex': [], 'barry': []} dic['barry'].append(11) print(dic) # {'alex': [11], 'barry': [11]} 可以看出两个键是共用的一个列表
当循环字典时,如果在循环中删除键值对,字典的键值对个数改变,长度改变,会报错
# 删除字典中键里还有'k'的键值对 dic = {'k1':'barry','k2':'alex','name':'ritian'} # li = [] # for i in dic: # if 'k' in i: # li.append(i) # for x in li: # del dic[x] # print(dic) for i in dic.copy(): if 'k' in i: del dic[i] print(dic)
五、转换
# 元祖与列表之间转换 tu = (1,2,3) l = list(tu) print(l,type(l)) li = [4,5,6] print(tuple(li),type(tuple(li))) # 字符串转换列表、元祖 print(list('abc')) # ['a', 'b', 'c'] 迭代转换 print(tuple('abc')) # ('a', 'b', 'c') 迭代转换
浙公网安备 33010602011771号