加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python列表到dict

发布时间:2020-12-20 12:40:43 所属栏目:Python 来源:网络整理
导读:我有一个很大的清单 ['a','2'] ['a','1'] ['b','3'] ['c','2'] ['b','1'] ['a','1']['b','1'] ['c','2']['b','3'] ['b','1'] 我想通过这个来获得每个第二项的数量输出以获得不同的第一项: {a:[2,1,1] b:[3,3,1] c:[2,2]} 解决方法 data = [['a','2'],['a','
我有一个很大的清单

['a','2'] ['a','1'] ['b','3'] ['c','2'] ['b','1'] ['a','1']['b','1'] ['c','2']['b','3'] ['b','1']

我想通过这个来获得每个第二项的数量输出以获得不同的第一项:

{a:[2,1,1] b:[3,3,1] c:[2,2]}

解决方法

data = [['a','2'],['a','1'],['b','3'],['c','1']]
result = {}
for key,value in data:
    result.setdefault(key,[]).append(value)

结果:

>>> result
{'a': ['2','1','c': ['2','b': ['3','3','1']}

我更喜欢dict.setdefault()而不是defaultdict,因为你最终得到了一个普通的字典,试图访问一个不存在的密钥会引发异常而不是给出一个值(在这种情况下是一个空列表).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读