Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何计算列表中的投票并存储在字典中以跟踪投票数量

如何计算列表中的投票并存储在字典中以跟踪投票数量
EN

Stack Overflow用户
提问于 2020-11-16 19:32:37
回答 6查看 73关注 0票数 0

示例:

代码语言:javascript
运行
AI代码解释
复制
list = ["a voted b", "c voted b", "d voted e", "e voted skip", "something else"]

字典结果:

代码语言:javascript
运行
AI代码解释
复制
{"b":2, "e":1, "skip":1}
EN

回答 6

Stack Overflow用户

发布于 2020-11-16 19:39:49

代码语言:javascript
运行
AI代码解释
复制
from collections import defaultdict

mylist = ["a voted b", "c voted b", "d voted e", "e voted skip"]

votes = defaultdict(int)
for item in mylist:
    votes[item.split()[-1]] += 1
票数 2
EN

Stack Overflow用户

发布于 2020-11-16 19:39:10

如果投票总是有相同的x voted y结构,你可以这样做:

代码语言:javascript
运行
AI代码解释
复制
# get a defaultdict for storing the result
from collections import defaultdict
result = defaultdict(int)

# split out the voted from each string in the list
pairs = [i.split(' voted ') for i in list]

# for each pair, increase the value for that key in the defaultdict by 1
for _, vote in pairs:
    result[vote] += 1

# convert back to dict
result = dict(result)
票数 0
EN

Stack Overflow用户

发布于 2020-11-16 19:44:43

one liner怎么样:

代码语言:javascript
运行
AI代码解释
复制
from collections import Counter
result = dict(Counter([s.split(' voted ')[-1] for s in list]))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64864533

复制
相关文章

相似问题

添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档