python - 如何对多维度字典求和?
问题描述
我有以下字典,我怎样才能总结所有 j 与固定 i 在 x[i,j]
x = {}
x[1,1] = 10
x[1,2] = 20
x[2,1] = 10
x[2,2] = 20
解决方案
如果您只想对二维数组中j
给定的所有内容求和,那么您可以创建一个辅助函数,这样就可以对给定的所有内容求和。i
array[i, j]
j
i
def sum_column(index, data):
// sum is a built in function - https://devdocs.io/python~3.7/library/functions#sum
return sum(data[index])
但是,如果您想说,获取所有总和的数组,j
那么我强烈建议您只对其进行迭代(假设您知道它是一个二维数组),而不是引入任何复杂的依赖项或编写任何花哨的单列。
例如:
def sum_all_columns(data):
results = []
for row in data:
results.append( sum(row) )
return results
粗略的稍加修改,这些功能也可以更新以支持dict
。例如:
def sum_column(key, data):
return sum( data[key].values() )
推荐阅读
- python - 道路设计特征的对象识别
- android - StartLockTask 因硬件按钮而失败
- php - 如何一次编写多个foreach语句
- c++ - 如何将向量中的每个元素增加指定值?
- node.js - 使用 HTTP 代理时通过 Chrome 与 Node.js 的 HTTP 请求的差异
- c# - 如何在 C# Web API 同步和异步中获取 Windows Authenticated 用户
- c++ - connect4 malloc 错误的复制构造函数
- javascript - GET 请求代理正确的 URL,但 POST 不使用 Express API 反应应用
- sql - 如何更改列以接受某种特定格式的值?
- vue.js - Vue if 语句处理得不够快