Kar*_*ick 67 python dictionary
如果我有d=dict(zip(range(1,10),range(50,61)))我怎么能建立一个collections.defaultdict出来的dict?
唯一的参数defaultdict似乎是工厂功能,我是否必须初始化然后通过原始d并更新defaultdict?
Joc*_*zel 77
阅读文档:
第一个参数提供default_factory属性的初始值; 它默认为None.所有剩余的参数都被视为传递给dict构造函数,包括关键字参数.
from collections import defaultdict
d=defaultdict(int, zip(range(1,10),range(50,61)))
Run Code Online (Sandbox Code Playgroud)
或者给一本字典d:
from collections import defaultdict
d=dict(zip(range(1,10),range(50,61)))
my_default_dict = defaultdict(int,d)
Run Code Online (Sandbox Code Playgroud)
小智 6
通过将 dict 作为第二个参数传递,您可以从 dict 构造一个 defaultdict。
from collections import defaultdict
d1 = {'foo': 17}
d2 = defaultdict(int, d1)
print(d2['foo']) ## should print 17
print(d2['bar']) ## should print 1 (default int val )
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22090 次 |
| 最近记录: |