Python defaultdict在创建时初始化

时间:2020-02-24 16:36:08

标签: python defaultdict

在创建期间是否有任何初始化defaultdict的方法?我的意思是要在一行中实现相同的行为:

x = defaultdict(int)
x[1] = 2

类似:

x = defaultdict(int, {1:2})

其中x[1] = 2和rest所有值均为0。

1 个答案:

答案 0 :(得分:1)

是的。这就是它应该起作用的方式。

defaultdictdict的子类,因此它将其余构造函数参数传递到dict

x = defaultdict(int)
x[1] = 2

y = defaultdict(int, {1:2})

print(x)
print(y)

输出:

defaultdict(<class 'int'>, {1: 2})
defaultdict(<class 'int'>, {1: 2})

两个实例具有相同的值。

注意: 这个问题最初是由另一个用户发布和删除的,但是我在这里找不到类似的问题,因此我认为有一个答案将很有用。