如何将代码块集群到级别(Python)

如何将代码块集群到级别(Python),python,Python,!!我正在尝试用Python构建一个小游戏来猜测一个范围内的随机数。代码将随机选择1,20之间的数字,并要求用户猜3次 我需要帮助将下面的代码块聚集到一个级别(比如级别0)。如果玩家能够正确猜测,则玩家将进入下一级别(级别1) 我需要进一步的帮助,把1级范围的条件改为1,30 import random secretNumber = random.randint(1,20) print(" I am thinking of a number between 1 and 20.") #Ask

!!我正在尝试用Python构建一个小游戏来猜测一个范围内的随机数。代码将随机选择1,20之间的数字,并要求用户猜3次

我需要帮助将下面的代码块聚集到一个级别(比如级别0)。如果玩家能够正确猜测,则玩家将进入下一级别(级别1)

我需要进一步的帮助,把1级范围的条件改为1,30

import random

secretNumber = random.randint(1,20)
print(" I am thinking of a number between 1 and 20.")

#Ask the player to guess 3 times.
for guessTaken in range(1,4):
    print("Take a guess. ")
    guess1 = int(input())
    if guess < secretNumber:
        print("Your guess is too low")
    elif guess > secretNumber:
        print("Your guess is too high")
    else:
        break

if guess == secretNumber:
    print("Good job! you guessed my number in " + str(guessTaken) + " guesses! Move onto the next level")
else:
    print("Nope. The number I was thinking of was " + str(secretNumber))

secretNumber1 = random.randint(1,30)
print(" Welcome to level 1 I am thinking of a number between 1 and 30.")
for guessTaken1 in range(1,4)
    guess = int(input())
    print("Take a guess. ")
    guess1 = int(input())
    if guess1 < secretNumber1:
    print("Your guess is too low")
    elif guess1 > secretNumber:
        print("Your guess is too high")
    else:
        break

if guess == secretNumber1
    print("Good job! you guessed my number in " + str(guessTaken) + " guesses! Move onto the next level")
else:
    print("Nope. The number I was thinking of was " + str(secretNumber1))
随机导入
secretNumber=random.randint(1,20)
打印(“我想到的是一个介于1和20之间的数字。”)
#让玩家猜3次。
对于在范围(1,4)内进行的猜测:
打印(“猜猜看”)
猜测1=int(输入())
如果guess秘密编号:
打印(“您的猜测太高”)
其他:
打破
如果guess==secretNumber:
打印(“干得好!你在“+str(猜)+”猜中猜到了我的号码!进入下一个级别”)
其他:
打印(“不,我想的数字是”+str(secretNumber))
secretNumber1=random.randint(1,30)
打印(“欢迎来到级别1,我想到的是一个介于1和30之间的数字。”)
对于范围(1,4)内的猜测1
guess=int(输入())
打印(“猜猜看”)
猜测1=int(输入())
如果猜测1秘籍编号:
打印(“您的猜测太高”)
其他:
打破
如果guess==secretNumber1
打印(“干得好!你在“+str(猜)+”猜中猜到了我的号码!进入下一个级别”)
其他:
打印(“不,我想的数字是”+str(secretNumber1))
这将起作用:

import random

def guess_number(max_number):
    print(" I am thinking of a number between 1 and {0}.".format(max_number))
    secret_number = random.randint(1, max_number)

    for guess_taken in range(1,4):
        print("Take a guess. ")
        guess = int(input())
        if guess < secret_number:
            print("Your guess is too low")
        elif guess > secret_number:
            print("You guess is too high")
        else:
            return (True, guess_taken)

    return (False, secret_number)

level = 1
for max_number in range(10, 30, 5):
    print("Current level: {0}".format(level))
    guessed = guess_number(max_number)
    if guessed[0]:
        print("Good job! you guessed my number in " + str(guessed[1]) + " guesses!")
    else:
        print("Nope. The number I was thinking of was " + str(guessed[1]))
        print ("Game over!")
        break
    level += 1

您在哪里尝试实现这一新功能?如果玩家在游戏结束时错过3次?您显然需要重新创建您的
secretNumber
,并重新启动循环以请求输入,那么你对哪一个有意见?@cricket\u 007我在重新启动循环时遇到了问题pycharm@DanIonescu是的,如果他们猜错了三次,游戏就结束了,他们会说“不,我想的号码是”+str(secretNumber)谢谢,这真是奇迹!仅对范围(10,30,5)中的最大值进行评论,这是否意味着它将在每个级别增加5,直到达到最大范围30?
Current level: 1
I am thinking of a number between 1 and 10.
Take a guess. 
6
You guess is too high
Take a guess. 
3
Your guess is too low
Take a guess. 
5
Good job! you guessed my number in 3 guesses!
Current level: 2
I am thinking of a number between 1 and 15.
Take a guess. 
7
Your guess is too low
Take a guess. 
10
Your guess is too low
Take a guess. 
13
You guess is too high
Take a guess. 
12
You guess is too high
Nope. The number I was thinking of was 11
Game over!