Python字典的主要属性:
- 通过键来取值
- 任意对象的无序集合
- 可变长,异构,任意嵌套
- 属于可变映射类型
- 对象引用表(散列表)
常见字典常量和操作
操作 | 解释 |
---|
D ={} | 空字典 |
D={‘AAA’:1,‘BBB’:2} | 两项字典 |
D={‘food’:{‘ham’:1,‘egg’:2}} | 嵌套 |
D=dict.fromkeys([‘a’,‘b’],0) | 其他构造技术({‘a’:0,‘b’:0}) |
D=dict(name=‘Bob’,age=42) | 其他构造技术 |
D =dict(zip([‘a’,‘b’],[1,2])) | 通过zip构造字典,{‘a’:1,‘b’:2} |
D[‘eggs’] | 以键进行索引 |
D=[‘food’][‘ham’] | 以键进行索引 |
‘eggs’ in D | 成员关系:测试键的存在 |
D.keys() | 键,返回的是视图对象 |
D.values() | 值,返回的是视图对象 |
D.items() | 键+值,返回的是视图对象 |
D.copy() | 复制 |
D.get(key,default) | 默认 |
D.update(D2) | 合并 |
D.pop(key) | 删除 |
len(D) | 长度(储存的元素数目) |
D[key]=42 | 新增,修改 |
del D[key] | 根据键删除条目 |
D={x:x*2 for x in range(10)} | 生成器 |
避免键不存在的异常(通过提供不存在的键一个默认值)
//通过if
if (2,3,6) in m:
print(m[(2,3,6)])
else:
print(0)
//通过try
try:
print(m[(2,3,6)])
except KeyError:
print(0)
//通过get
m.get((2,3,6),0)