[英]Python ignoring if
从 python(和计算机编程)开始,我正在尝试在这里编写代码,但我不确定为什么 python 忽略了我的 if/elif。 我正在创建一个带有随机数的变量,用户必须猜测每次错误尝试,一旦用户插入正确的数字,我就会给出提示(尝试更低/更大的数字),我正在尝试创建一个 continue选项。 但是一旦用户被提示问题 Você quer jogar novamente? (你想再玩一次吗?),与输入无关,游戏总是 go 作为下一个 if 的第一个选项。我正在尝试实现是或否输入(没关系)并使用答案关闭应用程序或重新开始游戏(不行)。
有什么想法吗?
thxxxxx
import random
import os
import time
# escolhendo o numero
numberSelected = random.randrange(101)
def dica():
if number > numberSelected:
print("Tente um numero menor")
else:
print("Tente um numero maior")
def cls():
os.system('cls' if os.name == 'nt' else 'clear')
while True:
text = input("Aperte enter para começar...")
if text == "":
cls()
print(
"Um número de 0 a 100 foi gerado\nagora você precisa adivinhar o numero gerado")
break
else:
print("Você ainda não apertou o Enter")
cls()
number = None
while True:
try:
print(numberSelected)
number = int(input('Chute um numero:'))
if type(number) == int:
if number == numberSelected:
print("Muito bem você acertou!")
print("Você quer jogar novamente?")
retry = input('S/N?')
if retry == "N" or "NAO":
print("Obrigado por jogar!")
exit()
elif retry == "S" or "SIM":
print("vamos jogar novamente")
cls()
numberSelected = random.randrange(101)
continue
elif number != numberSelected:
cls()
dica()
continue
except ValueError:
print("Digite um numero Inteiro!!")
time.sleep(0.8)
cls()
这有点糟糕,但 python 不允许你这样做。
if answer == 'no' or 'yes'
这将引发错误。 因此,您必须这样做。
if answer == 'no' or answer == 'yes'
替代方法可能是in
if answer in ('no','yes)
固定代码
if number == numberSelected:
print("Muito bem você acertou!")
print("Você quer jogar novamente?")
retry = input('S/N?')
if retry in ("N","NAO"):
print("Obrigado por jogar!")
exit()
elif retry in ("S","SIM"):
print("vamos jogar novamente")
cls()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.