【发布时间】:2016-12-15 23:32:42
【问题描述】:
我正在编写的程序允许您输入任何数字,程序将识别该数字是否为质数。但是,我收到如下所示的错误。
我的这行代码遇到了问题:
chosen = input("Input a number")
number = (chosen) / chosen
当我运行它时,输出如下:
Input a number1
Traceback (most recent call last):
File "C:\Users\engineer2\Desktop\Programs\prime numbers.py", line 3, in <module>
number = (chosen) / chosen
TypeError: unsupported operand type(s) for /: 'str' and 'str'
这里是完整的代码:
chosen = input("Input a number")
number = (chosen) / chosen
one = 1
if number == (one):
print ("Its a prime number")
else:
print ("Not a prime")
input ("press enter")
【问题讨论】:
-
input()返回一个字符串,而不是一个数字。您需要先将其转换为数字,然后才能对其进行算术运算。 -
如果您使用的是 python 3.x,
input会返回一个类似于 python 2.7 中的raw_input的字符串 -
下一次,请至少尝试在 Google 上搜索错误,然后再在 StackOverflow 上发布问题(或者您知道,对错误消息进行一点推理,它几乎可以准确地告诉您是什么在这种情况下是错误的)。
标签: python