繁体   English   中英

如何对从特定位置开始的列表元素求和

[英]How to sum list elements starting from a specific position

我有一个列表列表,例如:

mylist = [
    ['name', 'party', 'city', '0', '0', '1'],
    ['name', 'party', 'city', '1', '1', '1']
]

我想计算从位置3开始的数字总和。我知道在将元素转换为int之后如何计算lis元素的总和。

sum(int(mylist[i])) for i in range(len(mylist))

但是我如何告诉python从位置3(数字开始的地方)开始求和。

使用列表切片:

mylist = [['name','party','city','0','0','1'],['name','party','city','1','1','1']]

print sum([sum(map(int, item[3:])) for item in mylist])  # prints 4

简洁的版本

sum(int(nums) for inn in mylist for nums in inn[3:]) # 4

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM