首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python:当使用groupby并转换为字典时,值从列表中消失

Python:当使用groupby并转换为字典时,值从列表中消失
EN

Stack Overflow用户
提问于 2022-07-07 02:47:55
回答 1查看 33关注 0票数 0

我试图写一个简单的函数,给出决选投票的结果。

我从一个包含候选名称的嵌套列表开始,我想按照第一个元素对它们进行分组,并将它们放入字典中(其中第一个元素是键,第一个元素的嵌套列表是值)。

代码语言:javascript
运行
复制
def runoff_rec(xxx):
    print(xxx)


    sortedvotes = groupby(xxx, key=lambda x: x[0])
    votesdict = {}
    for key, value in sortedvotes:
        votesdict[key] = list(value)


    print(votesdict)

在第一次打印时,嵌套列表如下所示:

代码语言:javascript
运行
复制
[['Johan Liebert', 'Daisuke Aramaki', 'Lex Luthor', 'Gihren Zabi'], 
['Daisuke Aramaki', 'Gihren Zabi', 'Johan Liebert', 'Lex Luthor'], 
['Daisuke Aramaki', 'Lex Luthor', 'Gihren Zabi', 'Johan Liebert'], 
['Johan Liebert', 'Gihren Zabi', 'Lex Luthor', 'Daisuke Aramaki'], 
['Lex Luthor', 'Johan Liebert', 'Daisuke Aramaki', 'Gihren Zabi'], 
['Gihren Zabi', 'Daisuke Aramaki', 'Johan Liebert', 'Lex Luthor']]

但是当我印刷字典时,它看起来是这样的:

代码语言:javascript
运行
复制
{'Johan Liebert': [['Johan Liebert', 'Gihren Zabi', 'Lex Luthor', 'Daisuke Aramaki']], 
'Daisuke Aramaki': [['Daisuke Aramaki', 'Gihren Zabi', 'Johan Liebert', 'Lex Luthor'], ['Daisuke Aramaki', 'Lex Luthor', 'Gihren Zabi', 'Johan Liebert']],
 'Lex Luthor': [['Lex Luthor', 'Johan Liebert', 'Daisuke Aramaki', 'Gihren Zabi']], 
'Gihren Zabi': [['Gihren Zabi', 'Daisuke Aramaki', 'Johan Liebert', 'Lex Luthor']]}

列表中的一个值(第一个)消失了。知道为什么会这样吗?

提前谢谢你,祝你今天愉快

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-07 03:21:08

我想你想要这个

代码语言:javascript
运行
复制
def runoff_rec(xxx):
    print(xxx)

    xxx.sort(key=lambda x: x[0])
    sortedvotes = groupby(xxx, key=lambda x: x[0])
    votesdict = {}
    for key, value in sortedvotes:
        votesdict[key] = list(value)


    print(votesdict)

群评

“”使迭代器从可迭代的可迭代元素中返回连续的键和组,根据键函数将其划分为组。键A用于计算每个元素的组类别。如果键函数未指定或为空,则元素本身用于分组。“

连续是重要的

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72891769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档