"""
先定义一个字典,然后把defaultdict(list)赋值给字典,字典会被覆盖
"""
from collections import defaultdict
d={'a':[1,2,3],'b':[4,5]}
print(d)
{'a': [1, 2, 3], 'b': [4, 5]}
d=defaultdict(list)
print(d)
defaultdict(<class 'list'>, {})
"""
先定义defaultdict(list),然后再把字典赋值,defaultdict也会被覆盖
"""
from collections import defaultdict
d=defaultdict(list)
d={'a':[1,2,3],'b':[4,5]}
print(d)
{'a': [1, 2, 3], 'b': [4, 5]}
print(d['a'])
print(d)
print(d['c'])
[1, 2, 3]
{'a': [1, 2, 3], 'b': [4, 5]}
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-334-d7deff4162bb> in <module>()
1 print(d['a'])
2 print(d)
----> 3 print(d['c'])
KeyError: 'c'
"""
实现动态添加键值功能
"""
from collections import defaultdict
d=defaultdict(list)
print(d)
defaultdict(<class 'list'>, {})
"""
第一次运行以下代码块
"""
d['a'].append("python")
print(d)
print(d['a'])
print(d['c'])
输出结果:
defaultdict(<class 'list'>, {'a': ['python']})
['python']
[]
"""
第二次运行以上代码块
"""
输出结果:
defaultdict(<class 'list'>, {'a': ['python', 'python'], 'c': []})
['python', 'python']
[]
"""
第三次运行该代码块,并为c赋值
"""
d['a'].append("python")
d['c'].append("java")
print(d)
print(d['a'])
print(d['c'])
输出结果:
defaultdict(<class 'list'>, {'a': ['python', 'python', 'python'], 'c': ['java']})
['python', 'python', 'python']
['java']
评论