Skip to main content
 首页 » 编程设计

python之将单个值分配给具有多个值的字典键中的单个键

2025年05月04日30落叶

我看到很多论坛都在为 python 中的一个键分配多个值,但没有一个是相反的。我想要的是将单个键分配给单个值,然后翻转它。

我有什么:

myDict = {1: ['id1', 'id2', 'id3'], 2: ['id4', 'id5'], 3: ['id6']} 

我想做什么:

myDict = {'id1': 1, 'id2': 1, 'id3': 1, 'id4': 2, 'id5': 2, 'id6': 3} 

我一直在搜索论坛,但无法弄清楚如何将单个值分配给单个键,但我猜“翻转”部分看起来像这样:

myDict = {y:x for x,y in MyDict.iteritems()} 

如有任何帮助,我们将不胜感激。

编辑: 所有 id 都是唯一的(不是重复/倍数的机会)

请您参考如下方法:

您需要嵌套 2 个推导式,因为您在原始字典中有每个键值对的值列表。

怎么样

{id:x for x,y in myDict.iteritems() for id in y}