python 字典操作
创建字典
{}和dict()函数都可以创建字典
1 dict_a = {'name': '张三', 'age': '18', 'class': '三年级'} 2 dict_b = dict({'name': '李四', 'age': '20', 'class': '二年级'}) 3 print('dict_a: %s' % dict_a) 4 print('dict_b: %s' % dict_b) 5 6 结果: 7 dict_a: {'name': '张三', 'age': '18', 'class': '三年级'} 8 dict_b: {'name': '李四', 'age': '20', 'class': '二年级'}
访问字典值
根据字典的key可以访问value,或者get()方法访问value区别是当key不存在时后者不会报错,会返回None
1 dict_a = {'name': '张三', 'age': '18', 'class': '三年级'} 2 print(dict_a['name']) 3 print(dict_a.get('name')) 4 print(dict_a.get('name1')) 5 6 结果: 7 张三 8 张三 9 None
修改字典
根据字典的key重新给value赋值即可,已存在即修改,不存在即新增
1 dict_a = {'name': '张三', 'age': '18', 'class': '三年级'} 2 dict_a['name'] = '李四' 3 dict_a['gender'] = '男' 4 print(dict_a) 5 6 结果: 7 {'name': '李四', 'age': '18', 'class': '三年级', 'gender': '男'}
更新字典
update()方法,原字典有值则修改,无值则新增
1 dict_a = {'name': '张三', 'age': '18', 'class': '三年级'} 2 dict_b = {'name': '李四', 'age': '20', 'class': '三年级', 'gender': '男'} 3 print(dict_a) 4 dict_a.update(dict_b) 5 print(dict_a) 6 7 结果: 8 {'name': '张三', 'age': '18', 'class': '三年级'} 9 {'name': '李四', 'age': '20', 'class': '三年级', 'gender': '男'}
删除字典
del dict[key],通过key删除指定元素
1 dict_a = {'name': '张三', 'age': '18', 'class': '三年级'} 2 del dict_a['name'] 3 print(dict_a) 4 5 结果: 6 {'age': '18', 'class': '三年级'}
clear(),清空字典全部元素,返回一个空字典
1 dict_a = {'name': '张三', 'age': '18', 'class': '三年级'} 2 dict_a.clear() 3 print(dict_a) 4 5 结果: 6 {}
pop(),通过可以删除指定元素,并返回该key对应的value
1 dict_a = {'name': '张三', 'age': '18', 'class': '三年级'} 2 a = dict_a.pop('name') 3 print(dict_a) 4 print(a) 5 6 结果: 7 {'age': '18', 'class': '三年级'} 8 张三
字典遍历
1 dict_a = {'name': '张三', 'age': '18', 'class': '三年级'} 2 # 遍历所有key 3 for key in dict_a.keys(): 4 print(key) 5 print('-' * 50) 6 # 遍历所有value 7 for value in dict_a.values(): 8 print(value) 9 print('-' * 50) 10 # 遍历所有key,value 11 for key, value in dict_a.items(): 12 print(key + ':' + value) 13 14 结果: 15 name 16 age 17 class 18 -------------------------------------------------- 19 张三 20 18 21 三年级 22 -------------------------------------------------- 23 name:张三 24 age:18 25 class:三年级
字典嵌套
字典中存放列表
1 dict_a = {'name': '张三', 'age': '18', 'class': '三年级', 'subject': ['数学', '语文', '英语']} 2 print(dict_a['subject']) 3 for i in dict_a['subject']: 4 print(i) 5 6 结果: 7 ['数学', '语文', '英语'] 8 数学 9 语文 10 英语
字典中存放字典
1 dict_a = {'name': '张三', 'age': '18', 'class': '三年级', 'teachers': {'数学': '小明', '语文': '小红', '英语': '小文'}} 2 print(dict_a['teachers']) 3 for key, value in dict_a['teachers'].items(): 4 print(key + ":" + value) 5 6 结果: 7 {'数学': '小明', '语文': '小红', '英语': '小文'} 8 数学:小明 9 语文:小红 10 英语:小文

浙公网安备 33010602011771号