簡體   English   中英

如何將列表項轉換為默認值為 0 的字典鍵?

[英]How to convert list items to dictionary keys with 0 as default values?

我正在嘗試打開此列表:

['USA', 'Canada', 'Japan']

進入這本詞典:

{'USA': 0, 'Canada': 0, 'Japan': 0}

可以通過一個簡單的循環來實現嗎? 你會怎么想呢? 謝謝!

使用dict.fromkeys

lst = ["USA", "Canada", "Japan"]

out = dict.fromkeys(lst, 0)
print(out)

印刷:

{'USA': 0, 'Canada': 0, 'Japan': 0}

您可以使用collections.defaultdict ,迭代地將鍵附加到空字典:

class collections.defaultdict(default_factory=None, /[, ...])

返回一個類似字典的新 object。 defaultdict 是內置字典 class 的子類。 它覆蓋了一種方法並添加了一個可寫實例變量。

>>> from collections import defaultdict
>>> lst = ["USA", "Canada", "Japan"]
>>> new = defaultdict(dict)
>>> for x in lst:
...     new[x] = 0
...
>>> new
defaultdict(<class 'dict'>, {'USA': 0, 'Canada': 0, 'Japan': 0})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM