Python 检查两个变量是否相等
在我的代码中,我正在制作一个基本的乘法游戏 但在我的游戏中 当你得到正确的答案时,它说你错了 这是我的全部代码:Python 检查两个变量是否相等,python,input,Python,Input,在我的代码中,我正在制作一个基本的乘法游戏 但在我的游戏中 当你得到正确的答案时,它说你错了 这是我的全部代码: import random score = 0 while True: num1 = random.choice(range(1,12)) num2 = random.choice(range(1,12)) answer = num1 * num2 a = input("Solve for " + str(num1) + "x" + str(num2
import random
score = 0
while True:
num1 = random.choice(range(1,12))
num2 = random.choice(range(1,12))
answer = num1 * num2
a = input("Solve for " + str(num1) + "x" + str(num2))
if a == answer:
print("congrats you got it right")
score += 1
else:
print("Wrong sorry play again")
print("Score was: " + str(score))
break
当我得到正确的答案时,我得到了正确的答案
Solve for 7x10 70
Wrong sorry play again
Score was: 0
其他语言可能会让您不受影响,但Python是强类型的。输入函数获取字符串,而不是数字。数字不能等于字符串。在比较之前,请将数字转换为字符串或将字符串转换为数字。您可以使用
str
或int
进行转换。其他语言可能允许您进行转换,但Python是强类型的。输入函数获取字符串,而不是数字。数字不能等于字符串。在比较之前,请将数字转换为字符串或将字符串转换为数字。您可以使用str
或int
进行转换。函数input
返回键入的字符串。。。为了将其与答案进行比较,您需要将其转换为int
:
if int(a) == answer:
或者反过来(将答案转换为str
):
如果a
无法解析为int
,则第一个可能会引发异常。
PS:我真的很想知道你的随机库是如何从0到11之间选取1070个样本的…函数
输入
返回键入的字符串的内容的。。。为了将其与答案进行比较,您需要将其转换为int
:
if int(a) == answer:
或者反过来(将答案转换为str
):
如果a
无法解析为int
,则第一个可能会引发异常。
PS:我真的很想知道你的随机库是如何从0到11中选取1070个样本的…或者使用int(input())
:
或者使用int(输入())
:
当我把它改成int时,我得到a=input(“求解”+int(num1)+“x”+int(num2))类型错误:必须是str,不是intI我已经修复了它,我把它改成str(a)==str(答案):当我把它改成int时,我得到a=input(“求解”+int(num1)+“x”+int(num2))类型错误:必须是str,不是intI已经修复了它,我把它改成str(a)==str(答案):我还想知道,但情况是7,10是随机选取的整数,70是提供给程序的输入,没有空格,看起来数字是1070哦,我明白了!您可以将
+“=”
添加到输入中;)我还想知道,但情况是7,10是随机选取的整数,70是提供给程序的输入,没有空间,看起来像是1070哦,我明白了!您可以将+“=”
添加到输入中;)
import random
score = 0
while True:
num1 = random.choice(range(1,12))
num2 = random.choice(range(1,12))
answer = num1 * num2
a = int(input("Solve for " + str(num1) + "x" + str(num2)))
if a == answer:
print("congrats you got it right")
score += 1
else:
print("Wrong sorry play again")
print("Score was: " + str(score))
break