我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;是我在测试中输入的整数。
非常感谢任何帮助
答案 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)
答案 6 :(得分:-1)
您需要删除空格。我很确定逗号也有效!
[10, 2, 20] # 示例
或:[10220]