为了账号安全,请及时绑定邮箱和手机立即绑定

Python - 如何将元组列表排序为字典或等效项?

Python - 如何将元组列表排序为字典或等效项?

宝慕林4294392 2021-07-07 13:10:39
我有一个包含单词及其各自类别的元组列表。无论如何,我可以将它们聚集成字典之类的东西吗?样本数据:Data = [('word1 word2 word3', 2), ('word4 word5 word6', 3), ('word7 word8 word9', 3), ('word10 word11 word12', 2), ('word13 word14 word15', 1)]预期输出:Out = {'1': 'word13 word14 word15''2': 'word1 word2 word3', 'word10 word11 word12''3': 'word4 word5 word6', 'word7 word8 word9'}是否可以以这种方式对其进行排序?我应该使用什么功能。请给我建议,因为我有大量数据。以上只是一个例子。谢谢你

3 回答

?
德玛西亚99

TA贡献1770条经验 获得超3个赞

您显示的所需输出不完全有效。要获得最接近的有效内容,请使用defaultdict带有空列表的 a


new_dict = defaultdict(list)


for values, key in Data:

    new_dict[key].append(values)


查看完整回答
反对 回复 2021-07-13
?
温温酱

TA贡献1752条经验 获得超4个赞

您可以使用defaultdict这里,然后从那里使用sorted与dict()构造函数来创建以字典回你的愿望


from collections import defaultdict


dd = defaultdict(list)  

for v, k in data:

    dd[k].append(v)


d = dict(sorted(dd.items(), key=lambda x: x[0])) 

print(d)

# {1: ['word13 word14 word15'], 2: ['word1 word2 word3', 'word10 word11 word12'], 3: ['word4 word5 word6', 'word7 word8 word9']}



查看完整回答
反对 回复 2021-07-13

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号