高级 Python 知识点图解:dict.fromkeys 做了什么?

dict.fromkeys 是一个构造 dict 的函数,下面通过一段代码片段来了解一下它的构造过程:

dict.fromkeys(['k1','k2'],[])


使用 fromkeys 构造的关键字对应的 value 都指向了同一个空的数组。

v['k1'].append(666)


对其中一个关键字的内容实用 append 进行修改,操作的是共同的 list。

print(v)

{'k1': , 'k2': }

使用 = 进行赋值修改,可以在下图中看到修改的是关键字对应的 value。可以这样理解,关键字的value 并不能使用 append 函数,只是当它恰好是 list 数组的时候,可以使用。因此,在 append 被调用的时候,相当于说 key 值已经知道自己的 value 值是一个数组,同时它要调用这个数组的 append 函数。

v['k1'] = 777



print(v)

{'k1': 777, 'k2': }
原文链接:,转发请注明来源!