Python|将列表值分组到字典中
有时,在处理数据时,我们可能会遇到这样一种情况:我们有列表列表,我们需要将它的第二个索引与列表中的公共初始元素分组。让我们讨论一下解决这个问题的方法。
方法:使用defaultdict()
+ loop + dict()
defaultdict 可用于初始化组元素,循环可用于将值组合在一起,并且可以使用dict()
完成到字典的转换。
# Python3 code to demonstrate working of
# Grouping list values into dictionary
# Using defaultdict() + loop + dict()
from collections import defaultdict
# initializing list
test_list = [['Gfg', 1], ['Gfg', 2], ['is', 3], ['best', 4], ['is', 5]]
# printing original list
print("The original list is : " + str(test_list))
# Grouping list values into dictionary
# Using defaultdict() + loop + dict()
temp = defaultdict(list)
for key, val in test_list:
temp[key].append(val)
res = dict((key, tuple(val)) for key, val in temp.items())
# printing result
print("The grouped dictionary is : " + str(res))
输出 :
The original list is : [['Gfg', 1], ['Gfg', 2], ['is', 3], ['best', 4], ['is', 5]]
The grouped dictionary is : {'Gfg': (1, 2), 'best': (4, ), 'is': (3, 5)}