Игра "Угадай число" - это прекрасный пример для начинающих программистов, желающих освоить основы Python. Здесь мы создадим эту игру с нуля, обсудим каждый шаг разработки и добавим дополнительные функции для улучшения игрового опыта.
Игроку предлагается угадать число, загаданное программой. Число находится в определенном диапазоне (например, от 1 до 100). После каждой попытки программа сообщает, нужно ли угадывающему выбрать большее или меньшее число.
Первый шаг - создание функции для генерации случайного числа. Это делается с помощью модуля random в Python.
import random
def generate_number():
return random.randint(1, 100)
Основная логика игры реализуется через цикл while
, где пользователь вводит свои предположения, а программа дает подсказки.
def guess_the_number():
number_to_guess = generate_number()
attempts = 0
while True:
user_guess = int(input("Угадайте число от 1 до 100: "))
attempts += 1
if user_guess < number_to_guess:
print("Слишком мало, попробуйте еще раз!")
elif user_guess > number_to_guess:
print("Слишком много, попробуйте еще раз!")
else:
print(f"Поздравляем! Вы угадали число с {attempts} попыток.")
break
Запуск игры производится с помощью проверки if __name__ == "__main__"
:, которая гарантирует, что игра начнется, только если скрипт запущен как главный файл.
if __name__ == "__main__":
guess_the_number()
Добавление проверки корректности ввода пользователя помогает предотвратить ошибки и повышает устойчивость программы.
def get_user_guess():
while True:
try:
return int(input("Угадайте число от 1 до 100: "))
except ValueError:
print("Пожалуйста, введите корректное число.")
Добавим функцию, позволяющую игроку сыграть снова после окончания одной игровой сессии.
def play_again():
answer = input("Хотите сыграть еще раз? (да/нет): ")
return answer.lower() == 'да'
Интегрируем все улучшения для создания окончательной версии игры.
import random
def generate_number():
return random.randint(1, 100)
def get_user_guess():
while True:
try:
return int(input("Угадайте число от 1 до 100: "))
except ValueError:
print("Пожалуйста, введите корректное число.")
def play_again():
answer = input("Хотите сыграть еще раз? (да/нет): ")
return answer.lower() == 'да'
def guess_the_number():
while True:
number_to_guess = generate_number()
attempts = 0
while True:
user_guess = get_user_guess()
attempts += 1
if user_guess < number_to_guess:
print("Слишком мало, попробуйте еще раз!")
elif user_guess > number_to_guess:
print("Слишком много, попробуйте еще раз!")
else:
print(f"Поздравляем! Вы угадали число с {attempts} попыток.")
break
if not play_again():
break
if __name__ == "__main__":
guess_the_number()
"Угадай число" - это не только веселая и интересная игра, но и отличный способ научиться основам программирования на Python. Создавая и оптимизируя эту игру, вы учитесь основным концепциям программирования, таким как циклы, условные операторы, функции, обработка исключений и многому другому. Это знание будет полезно вам в будущем при создании более сложных программ и проектов.
Содержание: