我正在尝试使用 Python 3 进行测验。测验随机生成两个单独的数字和运算符。但是当我试图让用户输入他们的答案时,这会出现在 shell 中:
<class 'int'>
我不确定我需要做什么。即使我输入了正确的答案,它总是返回错误的答案。
import random
import operator
operation=[
(operator.add, "+"),
(operator.mul, "*"),
(operator.sub, "-")
]
num_of_q=10
score=0
name=input("What is your name? ")
class_name=input("Which class are you in? ")
print(name,", welcome to this maths test!")
for _ in range(num_of_q):
num1=random.randint(0,10)
num2=random.randint(1,10)
op,symbol=random.choice(operation)
print("What is",num1,symbol,num2,"?")
if input(int)==(num1,op,num2):
print("Correct")
score += 1
else:
print("Incorrect")
if num_of_q==10:
print(name,"you got",score,"/",num_of_q)
最佳答案
此行不正确:
if input(int)==(num1,op,num2):
您必须将输入转换为 int
并将 op
应用于 num1
和 num2
:
if int(input()) == op(num1, num2):
关于python - 如何让用户在 Python 3 中输入数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32679575/