如何将字符串列表转换为整数列表然后添加它们?

时间:2015-03-11 18:47:23

标签: python list

我尝试将字符串列表转换为int列表,然后添加元素。

示例:

test_list = ["1", "2", "5", "6"]转换为[1, 2, 5, 6],然后将其添加到14

4 个答案:

答案 0 :(得分:4)

您可以使用map

>>> test_list = ["1", "2", "5", "6"]
>>> map(int,test_list)
[1, 2, 5, 6]
>>> sum(map(int,test_list))
14

其他可能的方式

  • sum([int(i) for i in test_list]) List Comp
  • sum(int(i) for i in test_list)生成器表达式

注意 - 如here

所述,map是列表补充的更好选择
  在某些情况下(当你不是时,地图可能在显微镜下更快)   为此目的制作一个lambda,但在map中使用相同的函数   和listcomp)。在其他情况下,列表推导可能更快   大多数(不是全部)pythonistas认为它们更直接,更清晰。

答案 1 :(得分:2)

使用列表理解:

test_list = ["1", "2", "5", "6"]

new_list = [int(x) for x in test_list]

print sum(new_list)

答案 2 :(得分:0)

已经发布的答案是更好的做法,但是,一个非常容易理解的方法是:

int_list = []
count = 0
for item in test_list:
    int_list.append(int(item))
    count += int(item)
print(count)

答案 3 :(得分:0)

在我看来,这是最好的解决方案:

test_list = ["1", "2", "5", "6"]
def sum_strings(X):
    """changes the type to int and adds elements"""
    return reduce(lambda x, y: int(x) + int(y), X)
print sum_strings(test_list)

输出:

14