我应该如何折叠 Python 中的元素? [英] How should I collapse elements in Python?

查看:51
本文介绍了我应该如何折叠 Python 中的元素?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

例如:

l = [('a',1),('b',2),('a',2)]

collapsed_l = dict(a=[1,2],b=[2])

如何最好地从 lcollapsed_l?

How best to get from l to collapsed_l?

从某种意义上说,我想用某种方式概括我正在折叠的领域",以及哪个领域.我认为这类似于数据透视表在数据库和电子表格中的作用,但我可能错了.

In a sense, I want some way of generalising what "field" I'm collapsing, and by which field. I think this is similar to what pivot tables do in databases and spreadsheets, but I may be wrong.

推荐答案

>>> from collections import defaultdict
>>> l = [('a',1),('b',2),('a',2)]
>>> collapsed_l = defaultdict(list)     
>>> for letter,num in l:
        collapsed_l[letter].append(num)


>>> collapsed_l
defaultdict(<type 'list'>, {'a': [1, 2], 'b': [2]})

这篇关于我应该如何折叠 Python 中的元素?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆