【发布时间】:2017-04-01 13:53:36
【问题描述】:
我是一个使用 python 的初学者,正在编写一个“猜我的数字游戏”。到目前为止,我一切正常。计算机在 1 到 3 之间选择一个随机数,并要求玩家猜测该数字。如果猜测值高于随机数,则程序打印“Lower”,反之亦然。玩家只有5次尝试,当他们用完时,玩家会收到一条消息,游戏结束。如果玩家猜对了,则恭喜他们,游戏结束。但是,有时当数字猜对时,程序不会打印祝贺信息,我不知道为什么......
import random
print("\tWelcome to 'Guess My Number'!:")
print("\nI'm thinking of a numer between 1 and 100.")
print("Guess carefully, you only have 5 tries!.\n")
#sets initial values
the_number = random.randint(1,3)
guess = int(input("Take a guess: "))
tries = 1
guesses = 4
#guessing loop
while guess != the_number:
if guess > the_number:
print("Lower...")
elif guesses <= 0:
print("Sorry, you're out of guesses! Try again...")
break
elif guess < the_number:
print("Higher...")
guess = int(input("Take a guess: "))
tries += 1
guesses -= 1
if guess == the_number:
print("You guessed it! The number was", the_number)
print("And it only took you", tries, "tries!\n")
【问题讨论】:
-
if guess == the_number在 while 循环内...永远不会是真的 -
啊……当然。谢谢!
标签: python if-statement while-loop