让用户选择是否要重新启动游戏

2024-04-26 14:02:46 发布

您现在位置:Python中文网/ 问答频道 /正文

代码开始时,我让用户输入他想猜的数字范围……如果他猜的数字低于随机选择的数字,我会打印出来,然后再试一次,猜得更高,反之亦然

import random
import time
print("This is a guessing game!")        
print("")
user=input("Start by entering your name\n")
print("Hello "+user+"!")
print("Choose the end of the range by entering a number\n(Starting by default on 1)")
cho=input()
while  (float(cho))<1:
    print("Please enter another number , you have mistyped something")
    cho=input()
    if cho== range (1,9):
        continue
print("I am currently thinking a number from 1 to "+cho)
num=random.randint((float(1)),(float(cho)))
guess=input("Take a guess!\n")
while ((float(guess)) > (float(num))):
    print("Your number is higher than the one i thought.Guess lower")
    guess=float(input())
while float(guess) < float(num):
    print("Your number is lower than the one i thought.Guess higher")
    guess=float(input())
if float(guess)==float(num):
    print("You guessed right!Good Job!")
    print("The number was "+str(num))
    print("Thanks for playing!")
    time.sleep(2)
    print("Bye")
    time.sleep(1 )
    exit()

在用户完成这里之后,我想要一个if和一个elif,这样他就可以选择是否想要重新启动“游戏”


Tags: the用户numberinputbyiftimeis
2条回答

这是一个更简洁的代码版本。我还认为使用整数可能更有意义,并且只转换一次

import random

print("This is a guessing game!\n")
user = input("Start by entering your name\n")

running = True
while running:
    print("Hello "+user+"!")
    print("Choose the end of the range by entering a number\n(Starting by default on 1)")
    cho=input()
    while  (float(cho))<1:
        print("Please enter another number , you have mistyped something")
        cho=input()
    print("I am currently thinking a number from 1 to "+cho)
    num = random.randint(1, int(cho))
    guess = int(input("Take a guess!\n"))
    while guess > num:
        guess = int(input("Your number is higher than the one i thought. Guess lower"))
    while guess < num:
        guess= int(input("Your number is lower than the one i thought. Guess higher"))
    if guess == num:
        print("You guessed right! Good Job!")
        print("The number was " + str(num))
        keep_playing = input("Do you want to keep playing? ")
        if keep_playing == "No" or keep_playing == "no":
            print("Thanks for playing!")
            running = False

你可以有一个输入语句,询问“你想继续玩还是退出?”

这将是您的全部代码:

import random
import time
loop = 5
while loop == 5:
    print("This is a guessing game!")        
    print("")
    user=input("Start by entering your name\n")
    print("Hello "+user+"!")
    print("Choose the end of the range by entering a number\n(Starting by default on 1)")
    cho=input()
    while  (float(cho))<1:
        print("Please enter another number , you have mistyped something")
        cho=input()
        if cho== range (1,9):
            continue
    print("I am currently thinking a number from 1 to "+cho)
    num=random.randint((float(1)),(float(cho)))
    guess=input("Take a guess!\n")
    while ((float(guess)) > (float(num))):
        print("Your number is higher than the one i thought.Guess lower")
        guess=float(input())
    while float(guess) < float(num):
        print("Your number is lower than the one i thought.Guess higher")
        guess=float(input())
    if float(guess)==float(num):
        print("You guessed right!Good Job!")
        print("The number was "+str(num))
        keep = input("Do you want to keep playing? ")
        if keep == "Yes" or keep == "yes":
            loop = 5
        elif keep == "No" or keep == "no":
            print("Thanks for playing!")
            loop = 4

希望这就是你想要的

相关问题 更多 >