python - 使用列表推导的嵌套列表中的元素总和
问题描述
我正在尝试计算每个嵌套列表中为正的元素的总和。
data = [[10, 6, -1, 2, -4, 3, -10, -3, -2, 4],
[0, -3, -9, -1, 2, 6, -5, 8, -7, 0],
[-2, -10, -2, -7, 8, 0, 1, 0, 8, -5]]
sum_l = 0
sum_list : list = list()
sum_list = [[(sum_l+=y) for y in x] for x in data if y > 0]
我是这样写的,但它给出了一个错误:(sum_l+=y) 中的语法无效。我该如何解决它,以及如何正确使用列表推导?
谢谢!
解决方案
Use sum
to sum the inner lists:
data = [[10, 6, -1, 2, -4, 3, -10, -3, -2, 4],
[0, -3, -9, -1, 2, 6, -5, 8, -7, 0],
[-2, -10, -2, -7, 8, 0, 1, 0, 8, -5]]
result = [sum(e for e in lst if e > 0) for lst in data]
print(result)
Output
[25, 16, 17]
Resources:
推荐阅读
- python - 带有虚拟/分类变量的线性回归
- google-maps - 从存储在 Firebase 中的 latlng 列表中查找距当前位置最近的 latlng
- git - 如果有冲突,防止 git pull 修改文件?
- php - 在矩阵表php中创建最大和平均行
- python - 如何使用 itertools.zip_longest 有效地迭代以获取 2 个标记之间的数据
- angularjs - 由于缩进,Angular 1 中出现错误
- linux - 如何 SO_REUSEADDR | SO_REUSEPORT 在 setsockopt 中工作?
- php - 如何在 tinymce 编辑器图像管理器上使用 codeigniter 登录会话?
- ruby-on-rails - 使用“Puma”服务器的 Ruby on Rails 应用程序配置中的问题
- javascript - 在悬停时循环浏览不同的图像