Python - 如何添加整数(可能在列表中?)

时间:2014-03-20 07:59:57

标签: python variable-assignment

我15岁,并为学校做作业,我必须要有一个我必须拥有'用户'输入一个整数列表,然后程序必须将列表中的整数一起添加并返回:

Total: $[sum of integers]

到目前为止,我有

cost = input("Enter the expenses: ")
cost = int(cost)
total = sum(i)
print("Total: $" + i)

但它不断返回错误:

Traceback (most recent call last):
  File "C:\Python33\Did I Spend Too Much.py", line 2, in <module>
    cost = int(cost)
ValueError: invalid literal for int() with base 10: '10 15 9 5 7'

其中&#39; 10 15 9 5 7&#39;是我在测试中输入的整数。

非常感谢任何帮助

7 个答案:

答案 0 :(得分:3)

cost = cost.split()
total = sum([ int(i) for i in cost ])

答案 1 :(得分:1)

您正在尝试将空格转换为整数,这是不可能的。相反,您需要拆分字符串,然后将所有单个元素转换为整数:)

cost = cost.split()
cost = [ int(i) for i in cost ]
total = sum(total)

答案 2 :(得分:1)

这是我的答案

expenses = input("Enter the expenses: ")
expenses = expenses.split()

total = 0
for expense in expenses:
  total += int(expense)
print("Total: $" + str(total))

答案 3 :(得分:0)

您必须先将字符串转换为整数列表,如下所示:

cost = cost.split()

cost = [int(i) for i in cost]

然后你可以拨打sum(cost)

答案 4 :(得分:0)

你必须解析字符串。 input将字符串作为10 15 9 5 7返回,因此使用(空格)解析该字符串,您将获得str的列表。将str的列表转换为int并进行求和。

我可以给你解决方案,但最好的方式是你尝试自己作为学生。如果有任何问题,请发表评论。

答案 5 :(得分:0)

您输入的“10 15 9 5 7”无法识别为整数,因为其中有空格,也无法识别为整数列表,您需要执行相同的“转换”。

答案 6 :(得分:-1)

您需要删除空格。我很确定逗号也有效!

[10, 2, 20] # 示例

或:[10220]