Python 计算器代码问题:10+;5个结果为105
我对python计算器有问题。当我运行它并使用Python 计算器代码问题:10+;5个结果为105,python,python-3.x,Python,Python 3.x,我对python计算器有问题。当我运行它并使用+执行它时,例如:10+5给出105,但我想得到15 其他操作甚至不起作用(我得到一个错误) a+b实际上是'10'+'5',也就是'105'。这是因为 input()给出一个字符串。所以你需要先把它转换成一个数字 float(input()) 此外,为了确保用户只提供有效的数字,您可以使用: while True: a = input('\nGive a:') try: a = float(a)
+
执行它时,例如:10+5
给出105
,但我想得到15
其他操作甚至不起作用(我得到一个错误)
a+b
实际上是'10'+'5'
,也就是'105'
。这是因为
input()
给出一个字符串。所以你需要先把它转换成一个数字
float(input())
此外,为了确保用户只提供有效的数字,您可以使用:
while True:
a = input('\nGive a:')
try:
a = float(a)
break
except ValueError:
print('Try again.')
“输入”函数返回一个包含“10”和“5”的字符串。对两个字符串执行+运算符将它们连接起来(即“10”+“5”=“105”) 如果将输入转换为浮点或整数,则会得到所需的结果:
>>> a = "5" + "5"
>>> a
'55'
>>>
>>> b = float("5") + float("5")
>>> b
10.0
Python正在将输入设置为字符串。 您可以使用“type(a)”函数检查这一点 您需要将输入转换为浮点或整数
integer = int(a)
FloatingPoint = float(a)
看见
integer = int(a)
FloatingPoint = float(a)