python - 如何对字典内列表的所有值求和
问题描述
我正在尝试汇总此列表中的所有值,同时仍保持其位置:
{'swimming': ['1000', '1200'], 'fencing': ['200', '100'], 'athletics': ['600']}
添加后的输出应如下所示:
{'swimming': ['2200'], 'fencing': ['300'], 'athletics': ['600']}
我尝试了一些示例,但是,它们需要列表的名称。我将如何解决这个问题?
解决方案
尝试这个 :
>>> d = {'swimming': ['1000', '1200']}
>>> l = map(int, d['swimming'])
>>> sum(l)
2200
遍历字典的每个键,如果值包含列表中的多个项目,则将它们中的每一个映射为整数格式,将它们相加,类型转换为字符串格式并放入列表中,否则仅列表中的一项保持原状。要更改整个字典,请尝试以下操作:
>>> d = {'swimming': ['1000', '1200'], 'fencing': ['200', '100'], 'athletics': ['600']}
>>> for k in d:
... s = [str(sum(map(int, d[k])))] if len(d[k])>1 else d[k]
... d[k] = s
...
>>> d
{'swimming': ['2200'], 'fencing': ['300'], 'athletics': ['600']}
推荐阅读
- google-analytics - 在谷歌标签管理器中多次安装标签
- c# - 如何使用 Xamarin (Android) 获取有关用户设备中所有音频文件的数据?
- microsoft-graph-api - Graph Api Authentication failed on Creating Subscription for CallRecords with authentication as application
- sql - Oracle查询,按小时获取记录数
- css - Material-ui 日历在设备切换栏上重新加载页面时崩溃
- mysql - 修复 MySQL 转储中的错误编码字符
- r - R Keras:基本教程回归中的错误。py_call_impl(callable, dots$args, dots$keywords) 中的错误:ValueError:在用户代码中:
- python - 将串行数据发送到 ZedBoard 上的 FPGA 设计
- unreal-engine4 - 我收到错误。我无法导出我的项目
- reactjs - Next.js 上未显示内容丰富的富文本编辑器