- 字典:无序,key,value类型,key是唯一的
- 字典的显示:
#简单字典显示 info={ 'stu1101':"ZhangSan", 'stu1102':"LiSi", 'stu1103':"WangWu", 'stu1104':"WuTengLan", }
- 取值:
print(info['stu1101']) #取值,但是这个方法若不存在的时候,会导致异常,不建议使用
print(info.get('stu1106'))#取值,若是不存在,则返回None
- 增加/修改:若字典已有,则修改;若字段没有,则创建一个
info['stu1102'] = "李四"#若字段存在的时候,是修改内容,不存在则增加
- 删除
-
1 #删除,del是Python内置删除方法 2 del info['stu1102'] 3 #pop删除方法 4 info.pop('stu1101')
- 查找
#查找是否在字典里存在 print('stu1103' in info)
- 嵌套字典
1 student = { 2 "computer":{ 3 "cl1":["student1","student2"] 4 }, 5 "language":{ 6 "cl1":["student1","student2"] 7 }, 8 "law":{ 9 "cl1":["student1","student2"] 10 } 11 }
- 修改/增加
1 student["computer"]["cl1"][1] = "学生1"
- 显示值
1 print(student.keys())#显示字典的key 2 print(student.values())#显示字典的值
- setdefault()
1 student.setdefault("computer",{"test1":["学生1","学生2"]})#查找字典是否存在,若存在,则打印这个,若不存在,则增加一个
- update()
1 nfo={ 2 'stu1101':"ZhangSan", 3 'stu1102':"LiSi", 4 'stu1103':"WangWu", 5 'stu1104':"WuTengLan", 6 } 7 a = { 8 "stu1101" :1, 9 2:3, 10 4:5 11 } 12 info.update(a)#把字典合并,且两个字典有相同的key时候,将a字典里面的信息更新到新字典上
- 打印
1 #节省内存,节省时间,建议使用 2 for i in info: 3 print(i,info[i]) 4 #将字典转变成了列表,增加运算时间,不建议使用 5 for k,v in info.items(): 6 print(k,v)
- items() 将字典转换为列表
a = { "stu1101" :1, 2:3, 4:5 } print(a.items()) 结果: a = { "stu1101" :1, 2:3, 4:5 } print(a.items())
- dict.fromkeys() :初始化一个字典
a = { "stu1101" :1, 2:3, 4:5 } c = dict.fromkeys([7,8,9])#初始化字典,每个key分别为7,8,9 print(c) c = dict.fromkeys([7,8,9],"test")#初始化字典,每个key分别为7,8,9;对应的value都为test print(c) 结果: {7: None, 8: None, 9: None} {7: 'test', 8: 'test', 9: 'test'}
- 的