a = defaultdict(int)
a = a.fromkeys(["a","b","c"],[0,0])
print a
i = 1
j = 1
for k in a.keys():
print a
print a[k][0], a[k][1]
a[k][0] += i
a[k][1] += j
i += 1
j = i*2
print a
在输出中,它显示了循环中每次迭代的所有键都被更新,而不是特定迭代的键。这是输出:
defaultdict(None, {'a': [0, 0], 'c': [0, 0], 'b': [0, 0]})
defaultdict(None, {'a': [0, 0], 'c': [0, 0], 'b': [0, 0]})
0 0
defaultdict(None, {'a': [1, 1], 'c': [1, 1], 'b': [1, 1]})
1 1
defaultdict(None, {'a': [3, 5], 'c': [3, 5], 'b': [3, 5]})
3 5
defaultdict(None, {'a': [6, 11], 'c': [6, 11], 'b': [6, 11]})