因此,我和我的朋友们目前都在进行python课程,我们正在阅读一本名为“使用Python发明自己的计算机游戏”的书。我们找到了一个例子,这本书解释了如何创建一个猜数字游戏并决定搞砸它。
我们希望创建一个功能,每当用户成功猜出计算机生成的正确数字时,该功能就会增加难度。
我在想,或许我们可能需要一个计数器来跟踪用户成功赢得一轮的次数,然后(如果他们赢了)增加了数字范围。 例如: easy =(1,5) 中=(1,10) hard =(1,20)
这就是我所做的:
# This is a guess the number game.
import random
# create function for level difficulty
# The difficulty will be multiplied by 2 each time the user passes a level
def puzzle(difficulty):
while counter <= 3:
return difficulty * 2
counter = 0
guessestaken = 0
while guessestaken < 3:
while counter < 3:
level = puzzle(3)
number = random.randint(1, level)
print("I am thinking of a number between 1 and " + str(level))
print("Take a guess.")
guess = input()
guess = int(guess)
guessestaken += 1
if guess < number:
print("Your guess is too low.")
if guess > number:
print("Your guess is too high.")
if guess == number:
break
counter += 1
if guess == number:
guessestaken = str(guessestaken)
print ("Fantastic! You guessed my number in " + guessestaken + " guesses!")
if guess != number:
number = str(number)
print("Sorry, The number I was thinking of was " + number)
我是python的新手,刚刚学会了两天前的功能。欢迎任何形式的帮助。
答案 0 :(得分:0)
这可行:
times_won += 1
BONUS:做同样的事情,但是使用一个名为times_lost的变量,并在每次丢失时勾选它。
现在取决于你。你可以改变这样的难度:
level = puzzle(times_won+1*2)
这样可以让玩家获胜的次数自动上升。或者这个怎么样:
curr_dificulty = 5
if #player_won:
curr_dificulty += 4
这个和其他变化也会基于胜利增加它,但是以不同的方式。你也可以做到让失败减轻困难。这部分非常适合您。
P.S。您使用的标签“pygame”实际上是指使用可下载的库创建的游戏,您可以将其导入到代码中,而不是通常使用python制作的游戏。它使用实际图形制作游戏,你应该尝试一下!
P.P.S。如果你不知道,我上面用 #player_won 制作的奇怪语法以及 curr_dificulty 的分配不合适的事实是因为我使用了伪 - 码。它基本上给出了这个想法,但你需要自己做实际的代码。