簡體   English   中英

在列表的字典中切換鍵和值

[英]switch key and values in a dict of lists

您好Stackoverflow的人,

我有一個將列表作為值的嵌套字典,我想創建一個dict,其中所有列表條目都將其對應的鍵作為值。

時間示例!

# what I have
dict1 = {"A":[1,2,3], "B":[4,5,6], "C":[7,8,9]}

# what I want
dict2 = {1:"A", 2:"A", 3:"A", 4:"B", 5:"B", 6:"B", 7:"C", 8:"C", 9:"C"}

任何幫助都感激不盡!

嘗試這個

dict1 = {"A":[1,2,3], "B":[4,5,6], "C":[7,8,9]}
dict2= {}
for keys,values in dict1.items():
    for i in values:
        dict2[i]=keys
print(dict2)

輸出量

{1: 'A', 2: 'A', 3: 'A', 4: 'B', 5: 'B', 6: 'B', 7: 'C', 8: 'C', 9: 'C'}

希望能幫助到你

使用字典理解:

d = {'a': 'b', 'c': 'd', 'e': 'f'}
d2 = dict((v1, k) for k, v in d.items() for v1 in v)  # Here is the one-liner

假設您的key: value字典包含list作為值並使用dict理解。

使用第二個循環迭代原始詞典中存在的列表。

{item: key for key, value in dict1.items() for item in value}

暫無
暫無

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

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