lis中元素的求和

2024-04-25 01:07:05 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我的代码,我需要对列表中未定义的元素数求和。怎么做?

l = raw_input()
l = l.split(' ')
l.pop(0)

我的输入:3 5 4 9 输入后,我通过l.pop(0)删除第一个元素。 在.split(' ')之后,我的列表是['5', '4', '9'],我需要对列表中的所有元素求和。

在这种情况下,总数是18。请注意,没有定义元素的数量。


Tags: 代码元素列表input数量raw定义情况
3条回答
>>> l = raw_input()
1 2 3 4 5 6 7 8 9 10
>>> l = l.split()
>>> l.pop(0)
'1'
>>> sum(map(int, l)) #or simply sum(int(x) for x in l) , you've to convert the elements to integer first, before applying sum()
54

您可以使用内置的sum()对列表中的数字求和:

sum(your_list)

它会把你所有的数字加起来。示例:

my_list = range(10, 17)
my_list
[10, 11, 12, 13, 14, 15, 16]

sum(my_list)
91

针对您的具体情况

对于您的数据,首先将数字转换为int,然后对数字求和:

data = ['5', '4', '9']

sum(int(i) for i in data)
18

这对列表中未定义的元素数有效(只要它们是“数字”)

感谢@senderle在数据为字符串格式时重新转换注释。

Python iterable可以像so-^{}那样求和。这将对列表中除第一个元素外的所有元素求和。

>>> atuple = (1,2,3,4,5)
>>> sum(atuple)
15
>>> alist = [1,2,3,4,5]
>>> sum(alist)
15

相关问题 更多 >