如何将列表中的不同数字相加?
How to add up different numbers in a list?
我需要在列表中添加一些数字。
例如,我希望将 [1,3] 之类的列表转换为 [4],如果可能的话,将列表转换为字符串。
到目前为止我已经尝试过:
list._add_(list)
但这只会将 [1,3] 变成 [1,3,1,3]
你可以使用内置的sum
函数:
sum([1,3])
4
也可以使用lambda
和reduce
功能:
>>> reduce(lambda x, y: x + y, [1,2])
3
普通迭代器方法:
>>> l = [1,2,3]
>>> add_all = 0
>>> for i in l:
... add_all += i
...
>>> print add_all
6
不完全确定转换为字符串意味着什么:
l = [1,3]
使用sum:
print([sum(l)]) # sum and wrap in a list
[4]
使用map:
print(map(str,l)) # map from int to string, same as [str(x) for x in l]
['1', '3']
使用 str.join:
print("".join([str(x) for x in l]) # again map to str and join into a single string
13
或者您可以创建自己的函数:
def addList (l):
total=0
for i in l:
total=total+i
#Convert no. to string
return str(total)
您可以使用:
str(sum(your_list))
它将return列表中数字总和的字符串值。
我需要在列表中添加一些数字。 例如,我希望将 [1,3] 之类的列表转换为 [4],如果可能的话,将列表转换为字符串。 到目前为止我已经尝试过:
list._add_(list)
但这只会将 [1,3] 变成 [1,3,1,3]
你可以使用内置的sum
函数:
sum([1,3])
4
也可以使用lambda
和reduce
功能:
>>> reduce(lambda x, y: x + y, [1,2])
3
普通迭代器方法:
>>> l = [1,2,3]
>>> add_all = 0
>>> for i in l:
... add_all += i
...
>>> print add_all
6
不完全确定转换为字符串意味着什么:
l = [1,3]
使用sum:
print([sum(l)]) # sum and wrap in a list
[4]
使用map:
print(map(str,l)) # map from int to string, same as [str(x) for x in l]
['1', '3']
使用 str.join:
print("".join([str(x) for x in l]) # again map to str and join into a single string
13
或者您可以创建自己的函数:
def addList (l):
total=0
for i in l:
total=total+i
#Convert no. to string
return str(total)
您可以使用:
str(sum(your_list))
它将return列表中数字总和的字符串值。