Это игра на угадывание чисел на языке Python. Вы можете изменить максимальное значение случайного числа, а также изменить число попыток во время его выполнения с помощью опции «Настройки» в коде. Он подскажет вам, слишком высокий он или слишком низкий.
Мне потребовалось около часа, чтобы сделать это.
Надеюсь, вам понравится, и, пожалуйста, укажите на ошибки, которые я допустил в комментариях!
import random
n = 50
tries = 5
def start():
print("1. Change settings")
print("2. Play the game")
print("3. Exit")
try:
playorchange = int(input(">> "))
if playorchange == 1:
changenumber()
elif playorchange == 2:
playgame()
elif playorchange == 3:
print("Goodbye!\n")
exit()
else:
print("Please enter 1, 2, or 3.\n")
start()
except ValueError:
print("Invalid input.\n")
start()
def changenumber():
global tries, n
print("1. Change tries")
print("2. Change max number")
try:
a = int(input(">> "))
if a == 1:
try:
new_tries = int(input("New number of tries: "))
if new_tries > 0:
tries = new_tries
print("Tries updated.\n")
else:
print("Must be greater than 0.\n")
password_correct
except ValueError:
print("Enter a valid number.\n")
passsword_correct
elif a == 2:
try:
new_maxnum = int(input("New max number: "))
if new_maxnum >= 2:
n = new_maxnum
print("Max number updated.\n")
else:
print("Must be at least 2.\n")
password_correct()
except ValueError:
print("Enter a valid number.\n")
password_correct()
else:
print("Enter 1 or 2.\n")
password_correct()
except ValueError:
print("Invalid input.\n")
password_correct()
start()
def playgame():
global tries, n
randnum = random.randint(1, n)
remaining_tries = tries
print(f"\nGuess a number between 1 and {n}")
print(f"You have {tries} tries.\n")
while remaining_tries > 0:
try:
guess = int(input("Enter your guess: "))
if guess > randnum:
print("Too high.\n")
remaining_tries -= 1
elif guess < randnum:
print("Too low.\n")
remaining_tries -= 1
else:
remaining_tries -= 1
print(f"You won with {remaining_tries} tries left!\n")
start()
return
except ValueError:
print("Please enter a number.\n")
print(f"You lost. The number was {randnum}.\n")
start()
start()