所以,这个问题很难浓缩到标题中,但这里有一个详细的解释。
我有一个包含数千个键值对的大字典,可以包含以下示例:
dict = {'apple' : ['mint', 'nutmeg', 'cinnamon'], 'mint' : ['apple', 'orange', 'banana']}
注意 ' 苹果 ' 是一个键,它以列表作为其值,并且该列表包含 ' 薄荷 ' 元素。在我的大词典中的某处' 薄荷 ' 也可以是一个键,它可以有一个包含元素 ' 的水果列表。苹果 '。因为它是字典第二个元素中的键。
问题是我想保留那对苹果和薄荷,不管哪一个是关键,但我想要一个精制字典,它们不会形成重复项 .
所以所需的字典是:
dict_2 = {'apple' : ['mint', 'nutmeg', 'cinnamon'], 'mint' : ['orange', 'banana']}
'mint' 列表中的 'apple' 元素已被删除,或者
dict_2 = {'apple' : ['nutmeg', 'cinnamon'], 'mint' : ['apple', 'orange', 'banana']}
其中“apple”列表中的“mint”元素已被删除。编辑 : 我已经找到了解决这个问题的方法。你可以在下面找到它
最佳答案
mydict = {'apple' : ['mint', 'nutmeg', 'cinnamon'], 'mint' : ['apple', 'orange', 'banana']}
由于这看起来像是家庭作业,而且您还没有展示任何作业或提出具体问题,因此我将为您提供有关算法的提示,但编写代码取决于您。你想要
key, value
在字典里key = "apple"; value = ['mint', 'nutmeg', 'cinnamon']
v
`值:mydict
包含 key v
,mydict[v]
包含 key
. v
到 new_list
v
mydict[key]
到新创建的 new_list
将其转换为代码非常容易,您甚至可以将其编写为很酷的两行代码。如果您遇到问题并有具体问题,请随时提问!
在
mydict
上运行此算法的代码后,我得到:{'apple': ['nutmeg', 'cinnamon'], 'mint': ['apple', 'orange', 'banana']}
关于python - 如果某个键的值不止一次,则从列表中删除该元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67290459/