Python之字典(dict)
2017-10-20 00:00
441 查看
#-- 常用字典常量和操作 |
D = {} |
D = {'spam':2, 'tol':{'ham':1}} # 嵌套字典 |
D = dict.fromkeys(['s', 'd'], 8) # {'s': 8, 'd': 8} |
D = dict(name = 'tom', age = 12) # {'age': 12, 'name': 'tom'} |
D = dict([('name', 'tom'), ('age', 12)]) # {'age': 12, 'name': 'tom'} |
D = dict(zip(['name', 'age'], ['tom', 12])) # {'age': 12, 'name': 'tom'} |
D.keys(); D.values(); D.items() # 字典键、值以及键值对 |
D.get(key, default) # get函数 |
D.update(D_other) # 合并字典,如果存在相同的键值,D_other的数据会覆盖掉D的数据 |
D.pop(key, [D]) # 删除字典中键值为key的项,返回键值为key的值,如果不存在,返回默认值D,否则异常 |
D.popitem() # pop字典中随机的一项(一个键值对) |
D.setdefault(k[, d]) # 设置D中某一项的默认值。如果k存在,则返回D[k],否则设置D[k]=d,同时返回D[k]。 |
del D # 删除字典 |
del D['key'] # 删除字典的某一项 |
if key in D: if key not in D: # 测试字典键是否存在 |
# 字典注意事项:(1)对新索引赋值会添加一项(2)字典键不一定非得是字符串,也可以为任何的不可变对象 |
# 不可变对象:调用对象自身的任意方法,也不会改变该对象自身的内容,这些方法会创建新的对象并返回。 |
# 字符串、整数、tuple都是不可变对象,dict、set、list都是可变对象 |
D[(1,2,3)] = 2 # tuple作为字典的key |
#-- 字典解析 |
D = {k:8 for k in ['s', 'd']} # {'s': 8, 'd': 8} |
D = {k:v for (k, v) in zip(['name', 'age'], ['tom', 12])} # {'age': 12, 'name': tom} |
#-- 字典的特殊方法__missing__:当查找找不到key时,会执行该方法 |
class Dict(dict): |
def __missing__(self, key): |
self[key] = [] |
return self[key] |
dct = dict() |
dct["foo"].append(1) # 这有点类似于collections.defalutdict |
相关文章推荐
- python的【字典dict】:创建、访问、更新、删除;查看键、值、键值对;遍历;排序
- Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
- Python - 字典(dict) 详解 及 代码
- Python字典dict
- Python 表list, 元组tuple, 字典dict
- Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
- python 字典 dict
- Python 2.7学习笔记-字典dict
- Python遍历字典dict的几种方法
- python 字典(dict)按键和值排序
- python两种遍历字典(dict)的方法比较
- Python3基础 dict keys+values 循环打印字典中的所有键和值
- [python]用eval强制将字符串转换为字典变量时候出错:NameError: name 'null' is not defined[python]用eval函数 字符串转dict
- Python 中两个字典(dict)合并
- python 字典(dict)遍历的四种方法性能测试报告
- Python_Day_05 计数器(counter),有序字典(OrderDict),默认字典(defaultdict),可命名元祖(namedtuple),双向队列(deque),单项队列(deuqe.Queue)
- Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
- 一入python深似海--dict(字典)的一种实现
- python dict字典
- 列表(list)和字典(dict)数据排序 Python