字典

字典 dict

无序 key唯一

# 第一种方式键值必须满足python标识符的命名规则
>>> a = dict(one=1, two=2, three=3)
>>> b = {'one': 1, 'two': 2, 'three': 3}
>>> c = dict(zip(['one', 'two', 'three'], [1, 2, 3]))
>>> d = dict([('two', 2), ('one', 1), ('three', 3)])
>>> e = dict({'three': 3, 'one': 1, 'two': 2})
>>> a == b == c == d == e

字典中的常用方法

d = {}
# 增
d[key] = value # 如果不存在key会引发keyerror
d.setdefault(key,value) ## 如果不存在 设置value
# 删
del d[key]
d.remove(value)
d.pop(key,default) ## 删除key,如果没有返回default ,如果没设置default,并且没有key,报错
d.clear() 清空
# 改
d[key] = value
# 查
d[key]
d.get(key)
d.items() # 返回一个没索引但可遍历的新视图
d.keys() # 返回字典的所有键
d.values() # 返回字典的values
d.update(dict) # 接受新字典对象 如果有就更新,没有就添加

最常用的方法

dict.get()
d = {"k1":'v1'}
g1 = d.get('k1')  ## v1    获取到了
g2 = d.get('k2')  ##  None  没有获取到没有默认值返会None
g3 = d.get('k1',0) ##  v1   获取到  所以默认值无效
g4 = d.get('k2',0) ##  0    没获取到  返回默认值

第二常用的方法

dict.setdefault()
# 添加key:value
s1 = d.setdefault('k1')  ## 字典中已经存在key(k1) , 所以返回k1相对的value---------v1
print(s1,"----",d)
s2 = d.setdefault('k2')  ##  字典中没有k2,设置k2的value为默认值,由于未设置默认值,所以设置k2的value为----None
print(s2,"----",d)
s3 = d.setdefault('k1',0) ## 字典中有k1,所以默认值无效,返回k1的value------v1
print(s3,'----',d)
s4 = d.setdefault('k2',0) ##  由于第二步操作,已经给k2设置了None,所以返回k2的value------None
print(s4,'----',d)
s5 = d.setdefault('k3','v3')## 设置 k3 value 为 v3 返回-----v3
print(s5,'----',d)

原文地址:https://www.cnblogs.com/albert0823/p/10999103.html