Python 2.7 为什么我的python程序不工作?
当我测试这个有趣的游戏时,它总是说n0pe,即使我说的是正确的数字。我想不出它有什么毛病Python 2.7 为什么我的python程序不工作?,python-2.7,Python 2.7,当我测试这个有趣的游戏时,它总是说n0pe,即使我说的是正确的数字。我想不出它有什么毛病 目标是一个整数值raw_input()返回一个字符串。在python中,字符串和整数永远不会相等 例如: import time import random target = random.randrange(1, 3, 2) print target #for debug reasons time.sleep(5) shot = raw_input("Enter a random number") wh
目标
是一个整数值raw_input()
返回一个字符串。在python中,字符串和整数永远不会相等
例如:
import time
import random
target = random.randrange(1, 3, 2)
print target #for debug reasons
time.sleep(5)
shot = raw_input("Enter a random number")
while shot != target:
print "n0pe"
shot = raw_input("Enter a random number")
else:
print "you won"
在进行比较之前,您需要使用int()
将用户输入转换为整数
print 1 == "1"
# prints "False"
这种比较是不对的。您正在将字符串与整数进行比较 试试这个:
import time
import random
target = random.randrange(1, 3, 2)
print target #for debug reasons
time.sleep(5)
shot = int(raw_input("Enter a random number"))
while shot != target:
print "n0pe"
shot = int(raw_input("Enter a random number"))
else:
print "you won"
谢谢,我不知道为什么我没有想到这一点;D
import time
import random
target = random.randrange(1, 3, 2)
time.sleep(5)
shot = raw_input("Enter a random number")
while True:
if int(shot) != target:
print "n0pe"
shot = raw_input("Enter a random number")
else:
print "you won"
break