猜谜游戏(Python)问题。完全初学者
我有几天的Python知识。我一直在学习Codecademy之类的课程,我想投入一个项目。在这个项目开始时,我跟踪了一段YouTube视频,以了解其中的诀窍 我的游戏会问它是否想玩,如果“是”,它会继续玩。如果“否”,程序将停止。我不知道如何改变它,让它继续播放 当循环出现时,程序也不会在猜谜游戏(Python)问题。完全初学者,python,Python,我有几天的Python知识。我一直在学习Codecademy之类的课程,我想投入一个项目。在这个项目开始时,我跟踪了一段YouTube视频,以了解其中的诀窍 我的游戏会问它是否想玩,如果“是”,它会继续玩。如果“否”,程序将停止。我不知道如何改变它,让它继续播放 当循环出现时,程序也不会在之后显示该数字大于或小于。最初,我在while循环之后有一段代码,但没有什么区别 我只是一个希望通过实际项目更好地学习Python的初学者,所以我真的不确定在这里应该采取哪些步骤: import random
之后显示该数字大于或小于。最初,我在while
循环之后有一段代码,但没有什么区别
我只是一个希望通过实际项目更好地学习Python的初学者,所以我真的不确定在这里应该采取哪些步骤:
import random
number = random.randint(1,10)
tries = 1
name = input("Hello, What is your name?")
print("Hello there,", name)
question = input("Time to guess, ready? [Y/N]")
if question == "n":
print("sorry, lets go!")
if question == "y":
print("Im thinking of a number between 1 and 10.")
guess = int(input("Have a guess"))
if guess < number:
print("That is too low!")
if guess == number:
print("Congrats! You win!!")
if guess > number:
print("That is too high!")
while guess != number:
tries += 1
guess = int(input("Try again: "))
消息“过高”永远不会显示。if语句可能会进入while循环
您可以使用break语句终止while循环
您可以在此处找到更多详细信息:使用elif
非连续if
语句。将while
循环更改为允许中断
输出,以便显示正确的win消息
import random
number = random.randint(1,10)
tries = 1
name = input("Hello, What is your name?")
print("Hello there,", name)
question = input("Time to guess, ready? [Y/N]")
if question == "n":
print("sorry, lets go!")
if question == "y":
print("Im thinking of a number between 1 and 10.")
guess = int(input("Have a guess"))
while True:
if guess < number:
print("That is too low!")
elif guess == number:
print("Congrats! You win!!")
break
elif guess > number:
print("That is too high!")
tries += 1
guess = int(input("Try again: "))
随机导入
number=random.randint(1,10)
尝试=1
name=input(“你好,你叫什么名字?”)
打印(“你好,”,姓名)
问题=输入(“猜测时间,准备好了吗?[Y/N]”)
如果问题==“n”:
打印(“对不起,我们走吧!”)
如果问题==“y”:
打印(“我想到一个介于1和10之间的数字。”)
guess=int(输入(“有一个猜测”))
尽管如此:
如果猜测<数字:
打印(“太低了!”)
elif guess==数字:
打印(“恭喜!你赢了!!”)
打破
elif guess>数字:
打印(“太高了!”)
尝试次数+=1
guess=int(输入(“重试:”)
我支持@furas,因为它实际上应该是一对嵌套的,而循环的结构类似于:
import random
name = input("Hello, What is your name? ")
print("Hello there,", name)
answer = "y"
while answer.lower().startswith("y"):
number = random.randint(1, 10)
print("I'm thinking of a number between 1 and 10.")
guess = int(input("Have a guess: "))
while True:
if guess < number:
print("That is too low!")
elif guess > number:
print("That is too high!")
else:
print("Congrats! You win!")
break
guess = int(input("Try again: "))
answer = input("Play again? [Y/N]: ")
print("Goodbye!")
随机导入
name=input(“你好,你叫什么名字?”)
打印(“你好,”,姓名)
回答=“y”
而answer.lower().startswith(“y”):
number=random.randint(1,10)
打印(“我想的是一个介于1和10之间的数字。”)
guess=int(输入(“有一个猜测:”)
尽管如此:
如果猜测<数字:
打印(“太低了!”)
elif guess>数字:
打印(“太高了!”)
其他:
打印(“恭喜!你赢了!”)
打破
guess=int(输入(“重试:”)
回答=输入(“再次播放?[Y/N]:”)
打印(“再见!”)
在循环时将代码放入另一个中,当你猜到数字后,它会再次运行。我如何做才能让用户在开始时说“不”,游戏会说“对不起”,并让他们猜。感谢您提供的if和elif提示。然后只需删除对问题变量的检查,然后继续循环。。。
import random
name = input("Hello, What is your name? ")
print("Hello there,", name)
answer = "y"
while answer.lower().startswith("y"):
number = random.randint(1, 10)
print("I'm thinking of a number between 1 and 10.")
guess = int(input("Have a guess: "))
while True:
if guess < number:
print("That is too low!")
elif guess > number:
print("That is too high!")
else:
print("Congrats! You win!")
break
guess = int(input("Try again: "))
answer = input("Play again? [Y/N]: ")
print("Goodbye!")