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

Linda Hamilton
發布: 2024-11-26 05:43:09
原創
300 人瀏覽過

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

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板