python 3从输入求和

时间:2018-09-09 04:26:55

标签: python python-3.x

我正在尝试创建一个接受数字并将其求和的程序 但是由于某种原因,代码无法正常工作

number = input("please enter a four digit number: ")
final = sum(number)
print(final)
TypeError: unsupported operand type(s) for +: 'int' and 'str'

我试图将其转换为整数和字符串,但一直说它们每个都是烦人的

我在做什么错了?

3 个答案:

答案 0 :(得分:1)

input返回一个字符串。因此,必须先将每个字符转换为整数,然后才能求和

>>> number = '1234'
>>> final = sum(map(int, number))
>>> print(final)
10

答案 1 :(得分:0)

尝试使用它。

def sumNumber():
    number = input("please enter a four digit number: ")
    return sum(int(x) for x in number)

print(sumNumber())

#   Examples:
#   22222 returns 10
#   12345 returns 15

此函数将输入的字符串转换为整数列表,然后使用sum()返回数组的和。

答案 2 :(得分:0)

OR:

number = input("please enter a four digit number: ")
final = sum(int(i) for i in number)
print(final)

Ex输出:

please enter a four digit number:  1234
10