首頁 >後端開發 >Python教學 >在Python中初始化空列表字典時如何避免共享列表引用?

在Python中初始化空列表字典時如何避免共享列表引用?

Linda Hamilton
Linda Hamilton原創
2024-11-26 05:43:09406瀏覽

How to Avoid Shared List References When Initializing Empty List Dictionaries in Python?

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn