Python 中空列表字典的初始化
尝试使用 fromkeys 方法创建列表字典可能会导致意外行为,其中所有内容字典键在附加到一个键时会更新。这是因为 fromkeys 创建一个列表对象并将其作为所有键的值进行引用。
要解决此问题,请使用字典理解:
data = {k: [] for k in range(2)}
此理解创建一个新列表每个键的对象,确保每个键都有自己独立的列表。
或者,在 2.7 之前的 Python 版本中,使用传递给 dict 构造函数的列表理解:
data = dict([(k, []) for k in range(2)])
或者,在 Python 2.4-2.6 中,可以将生成器表达式传递给 dict:
data = dict((k, []) for k in range(2))
以上是在Python中初始化空列表字典时如何避免共享列表引用?的详细内容。更多信息请关注PHP中文网其他相关文章!