我提前道歉,如果这是一个重复的问题,我很努力地找到它在堆栈溢出,但我没有成功。 我有一个像下面那样的字典清单。你知道吗
d1 = {'saw': ['movie', '14', 'bird', '8', 'light', '5', 'plane', '4', 'man', '4'],
'saw': ['zit', '10', 'popcorn', '6', 'pimple', '6', 'cherry', '5', 'pill', '4'],
'evicted': ['tenant', '66', 'family', '5', 'renter', '5', 'neighbor', '4'],
'evicted': ['dog', '9', 'teacher', '9', 'neighbor', '7', 'man', '6', 'girl', '6']}
我想合并不同的项目,根据他们的关键。所以他们看起来像:
d2 = {'saw': ['movie', '14', 'bird', '8', 'light', '5',
'plane', '4', 'man', '4', 'zit', '10', 'popcorn', '6', 'pimple', '6',
'cherry', '5', 'pill', '4'],
'evicted': ['tenant', '66', 'family', '5', 'renter', '5', 'neighbor', '4',
'dog', '9', 'teacher', '9', 'neighbor', '7', 'man', '6', 'girl', '6']}
我正在使用此代码,但如果没有所需的输出:
d2 = {}
for d in d1:
for k, v in d1 ():
if k not in d2: d2 [k] = []
d2 [k].append (v)
print(d2)
我想当有两个单独的词典列表要合并时,这种方法会更好。如何在列表中合并不同的键?我真的很感谢你在这方面的帮助!你知道吗
1.如果你的
d1
是一个list
就可以了。但是如果您的d1
是dict
,则dict
不能有重复的密钥。它是dict
的基本比例。所以你的d1
是非法的,只有一个evicted
/saw
2假设d1是一个列表,代码为:
问题是字典不能有重复的键。如果在声明后添加一个
print d1
,您将看到重复的键消失了。您需要为d1
使用单独的字典或其他数据结构。你知道吗相关问题 更多 >
编程相关推荐