字典:
增:
setdefalt:添加键值对,只有键那么对应值为None,如果字典中存在键值对,则它不会更改和覆盖(有则不变,无则添加)
dic[key] :value (有则修改,无则添加)
dic = { 'name': '太白金星', 'age': 18, 'hobby': 'wife', } # 1,有则修改,无则添加 dic['hight'] = 176 dic['age'] = 23 print(dic) # 2,有责不变,无责添加 dic.setdefault('weight') # {'name': '太白金星', 'age': 18, 'hobby': 'wife', 'weight': None} dic.setdefault('weight',160) # {'name': '太白金星', 'age': 18, 'hobby': 'wife', 'weight': 160} dic.setdefault('name','barry') # {'name': '太白金星', 'age': 18, 'hobby': 'wife'} print(dic)
删:
pop:根据key删除对应的值,能返回被删除的值
dic = { 'name': '太白金星', 'age': 18, 'hobby': 'wife', } ret = dic.pop('age') # 按照键删除掉键值对 print(ret) dic.pop('age1') # 没有报错 ret = dic.pop('age1', '没有此键') # 设置两个参数,第二个参数是提示语 一般设置成None print(ret) print(dic)
popitem:python3.6之前>>随机删除某个键值对;python3.6之后>>默认删除最后的键值对;将删除的键值对以元祖形式返回
dic = { 'name': '太白金星', 'age': 18, 'hobby': 'wife', } ret = dic.popitem() print(ret) print(dic)
clear:清空字典
del:直接删除,如果字典中存在key,则直接删除,如果不存在,则抛出keyerror
dic = { 'name': '太白金星', 'age': 18, 'hobby': 'wife', } del dic['name'] # 按照键删除 del dic['name1'] del dic # 删除字典 print(dic)
改:
update:将字典所有的键值对进行覆盖、添加; 如果两个字典操作的话:dic2.update(dic)>>>把dic字典添加到dic2字典中,如果dic2存在dic中的键name它对应的值会被dic中的值替代
dic = { 'name': '太白金星', 'age': 18, 'hobby': 'wife', } dic.update(car='逍客', money=1300) dic = {"name": "jin", "age": 18, "sex": "male"} dic2 = {"name": "alex", "weight": 75} dic2.update(dic) # 将dic里面的键值对覆盖添加到dic2中 print(dic) # {'name': 'jin', 'age': 18, 'sex': 'male'} print(dic2) # {'name': 'jin', 'weight': 75, 'age': 18, 'sex': 'male'}
查:
get:查找没有此键默认返回None,还可以设置返回值
dic = { 'name': '太白金星', 'age': 18, 'hobby': 'wife', } print(dic.get('age')) # 没有此键默认返回None print(dic.get('age1')) # 可以设置返回值 print(dic.get('age1', '没有此键'))
其他方法
dic.key()把字典中的键放在一个列表中
dic = { 'name': '太白金星', 'age': 18, 'hobby': 'wife', } for i in dic: print(i) dic.keys() #类似于list的容器类类型 ret = dic.keys() print(ret, type(ret)) for key in ret: print(key) print(ret[0]) # 可以转化成list print(list(ret))
dic.values()把字典中的值放在一个列表中
dic = { 'name': '太白金星', 'age': 18, 'hobby': 'wife', } dic.values() print(dic.values()) # 转化成list print(list(dic.values())) for v in dic.values(): print(v)
dic.items() 把字典中的每队键值对以*伪列表*的类型显示
dic = { 'name': '太白金星', 'age': 18, 'hobby': 'wife', } print(dic.items()) print(list(dic.items())) for i in dic.items(): print(i)
其他方法: