我正在编写一个将一系列添加到一起的程序 用户输入的数字,直到用户输入流氓值为0 程序将显示总数。
user_input = None
total_sum = 0
while user_input != 0:
user_input = input("Enter a number:")
total_sum = total_sum + user_input
# Sample output:
# Enter a number: 5
# Enter a number: 50
# Enter a number: 10
# Enter a number: 0
# The total sum of the numbers are 65
print("The total sum of the numbers are {}".format(total_sum))
不断出现的错误是:
total_sum = total_sum + user_input
TypeError: unsupported operand type(s) for +: 'int' and 'str'
答案 0 :(得分:0)
您需要将输入转换为int
user_input = int(user_input )
答案 1 :(得分:0)
input
会返回一个字符串,即使它是一个包含数字的字符串(例如" 5")。您需要将其显式转换为int
:
user_input = int(input("Enter a number: "))
答案 2 :(得分:0)
您需要将String值解析为Integer值。
在您的情况下,user_input
是字符串值。
要将String值解析为Integer,您需要使用int(user_input)
而不是user_input
。
total_sum = total_sum + int(user_input)//像这样
答案 3 :(得分:0)
输入("输入数字")返回一个字符串,表示user_input的类型为字符串。
因此,您需要将user_input强制转换为int才能添加。即total_sum = total_sum + parseInt(user_input)