字典方法

字典:
特性
key-value结构
key必须可hash,切必须不可变类型,必须唯一
可以存放任意多个值,可修改,可以不唯一
无序
查找速度快

dic = {'stu01': 'zheng', 'stu02': 'xiao', 'stu03': 'zhang'}

增加

dic['stu04'] = 'wang'
查找是否在里面
 'stu01' in dic
 True
获取
print(dic.get('stt')) #如果没有不会报错
 dic['stt'] #如果没有会报错
指定删除
print(dic.pop('stu01'))
随机删除,一般删除最后一个
print(dic.popitem())
info = {'zheng': [26, 'IT'], 'xiao': [23, 'PM'], 'zhang': [26, 'PR']}

获取所有的key
print(info.keys())
dict_keys(['zheng', 'xiao', 'zhang'])
获取所有的value
print(info.values())
dict_values([[26, 'IT'], [23, 'PM'], [26, 'PR']])
把字典里面的key和valuse组成小元祖,然后转换成列表
print(info.items())
dict_items([('zheng', [26, 'IT']), ('xiao', [23, 'PM']), ('zhang', [26, 'PR'])])
更新,如果dic里面的key,有和被更新的字典里面的key相同,着被覆盖,没有的key就更新进去
dic = {1: 2, 2: 2, 3: 3, 'zhang': 22}

info.update(dic)
#更新前
info = {'zheng': [26, 'IT'], 'xiao': [23, 'PM'], 'zhang': [26, 'PR']}

#跟新后
{'zheng': [26, 'IT'], 'xiao': [23, 'PM'], 'zhang': 22, 1: 2, 2: 2, 3: 3}
如果需要增加的值有,则字典不变,如果没有,则进行增加
info.setdefault('zhangg', '12')
{'zheng': [26, 'IT'], 'xiao': [23, 'PM'], 'zhang': 22, 1: 2, 2: 2, 3: 3, 'zhangg': '12'}
批量增加key值
info.fromkeys(['a','b','c'],'zheng')
循环,建议使用该方法
for i in info:
    print(i, info[i])
不建议使用该方法循环,效率低
为什么效率低,是因为需要先对字典全部转化成列表,然后再进行循环
for k,i in info.items():
     print(k,i)
 
原文地址:https://www.cnblogs.com/zhengyiqun1992/p/9977228.html