本节学习python中的字典,字典是可变的容器模型,可存储任何类型的数据对象;字典是序列类型,但是是无序的。
字典使用键,值对,中间用冒号(:)隔开,不同键值对使用逗号(,)隔开,使用花括号({})括起来。
字典中键必须唯一,且不能改变,因此必须使用不可变数据类型,如:字符、数字、元祖;值可以是任何数据类型
创建空字典直接使用dict1 = {}
创建字典 dict2 = {'name':'baiyang','age':'18'}
#使用指定的序列作为键值,使用一个值做为字典所有值 L = ["one","two","three"] d = dict.fromkeys(L,"hhhh") print(d)
dict1 = {'one':1, 'two':2, 'three':3} print(dict1.get('th')) #获取value值,如果不存在返回后面默认值None print(dict1.get('th' , 100)) #获取value值,如果不存在返回后面默认值100 print(dict1['th']) #键不存在,报错
1 dict1 = {'name':'baiyang','age':18} 2 print(dict1['name']) #访问字典值 3 print(dict1.get('name')) #返回指定键的值,如果值不在字典中返回default值 4 5 for key,value in dict1.items(): #循环字典输出键值对,以列表返回可遍历的(键, 值) 元组数组 6 print(key,value) 7 8 print(len(dict1)) #统计字典长度,根据键总数统计 9 10 print(dict1.keys()) #返回一个迭代器,可以使用 list() 来转换为列表 11 12 print(dict1.values()) #返回一个迭代器,可以使用 list() 来转换为列表 13 14 dict1.popitem() #随机删除键值对 15 16 # dict1.pop('age') # 删除指定的键值对 17 18 #dict1.clear() #字典清空 19 20 dict3 = {'work':'test'} 21 dict1.update(dict3) #字典合并 22 print(dict1) 23 24 dict4 = dict1.copy() #字典复制 25 print(dict4) 26 27 dict5 = [key for key,value in dict4.items() ] #字典推倒式 28 print(dict5) 29 30 dict2 = {'1':'11','2':'22','3':'33','4':{5:'55',6:[1,2,3,4]}} 31 print(dict2['4'][6][1]) #输出[1,2,3,4]中的第二个元素