gpt4 book ai didi

python - 字典将许多值更改为许多键

转载 作者:太空宇宙 更新时间:2023-11-04 07:45:43 26 4
gpt4 key购买 nike

我只是想知道在 Python 的美妙世界中是否有任何方法可以从这样的事情开始:

dict1 = {'a': [1,2,3], 'b': [4,5,6]}

dict2 = {'a':1, 'a':2, 'a':3,'b':4, 'b': 5, 'b': 6]

或等价物,顺序无关紧要,但我需要某种方法将 dict1 分解成可以将数值分配给新列表的索引并将键作为这些索引的实际值的东西,例如dict1 会变成:

[0, a, a, a, b, b, b] 

任何帮助将不胜感激,尽管越白痴证明答案越好。

再次感谢您。

最佳答案

您的 dict2 没有意义,因为字典键必须是唯一的。

我很确定你可以通过遍历 dict1.items() 得到你想要的东西,但我需要更多地澄清预期的输出列表是什么样子......在你的例子中 ab 未定义,我不知道开头的 0 代表什么。

也许你想要这样的东西?

dict2 = {}
for k,v in dict1.items():
for x in v:
dict2[x] = k

这会给你一个 dict2{1: 'a', 2: 'a', 3: 'a', 4: 'b', 5: 'b' , 6: 'b'}.请注意,此循环可能会覆盖 dict1 的解压缩值中的重复条目。


只是为了狗屎和咯咯笑,在 1 行中与 难以理解的字典理解 相同:

{x: k for (k,v) in dict1.items() for x in v}

关于python - 字典将许多值更改为许多键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8516181/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com