Создание игры на Питоне. «Угадай число»

Всем начинающим программистам хочется создать на новом языке программирования какую-нибудь игру, но знаний и практических навыков пока еще маловато. Не беда! Давайте создадим простую игру с использованием логических условий!


Иногда лучший способ начать работу с новым языком программирования - посмотреть уже готовую разработку. Смысл состоит из просмотра существующего фрагмента кода, чтобы узнать, как он работает.


Угадай число, game on python

Давайте рассмотрим кусок кода довольно простой, но полностью работающей игры на Python «Угадай число». Вначале посмотрите на код. Посмотрите на синтаксис. Постарайтесь понять, что этот код делает, построчно. Измените код, чтобы узнать, можете ли вы адаптировать эту игру.


Код игры «Угадай число»



import random
NumberToGuess=random.randint(1,100)
userGuess=-1

while userGuess!=NumberToGuess:
userGuess=int(input("Угадай число от 1 до 100"))
if userGuess > NumberToGuess:
print("Число должно быть меньше!")
elif userGuess < NumberToGuess:
print("Число должно быть больше!")
else:
print("Вы угадали, это число = " + str(NumberToGuess))
#Конец игры - выйти из цикла while
break


Давайте разберем, как это работает


Строки



import random
NumberToGuess = random.randint(1,100)


Генерируют случайное целое число от 1 до 100 и помещают его в переменную
NumberToGuess.



Конструкция



while userGuess!=NumberToGuess:

задает цикл с условием. Пока число пользователя не совпадёт с загаданным числом


Блок кода


   

if userGuess > NumberToGuess:
print("Число должно быть меньше!")
elif userGuess < NumberToGuess:
print("Число должно быть больше!")
else:

совершает три сравнения и выводит предупреждающие надписи, чтобы пользователь смог догадаться. Работают так называемые логические условия, если одно из них принимает значение True, то эта часть выполняется.


последняя строка


else:

указывает на то, что число угадано. Дальше выводится надпись, что вы угадали число и программа завершается.


Пример работы программы


Python 3.5.2 (default, Dec 2015, 13:05:11)

[GCC 4.8.2] on linux
>
Угадай число от 1 до 100 60
Число должно быть меньше!
Угадай число от 1 до 100 50
Число должно быть меньше!
Угадай число от 1 до 100 40
Число должно быть меньше!
Угадай число от 1 до 100 30
Число должно быть меньше!
Угадай число от 1 до 100 20
Число должно быть меньше!
Угадай число от 1 до 100 10
Число должно быть больше!
Угадай число от 1 до 100 12
Вы угадали, это число = 12
>

Возможная доработка программы


Не могли бы вы изменить этот код, чтобы подсчитать, сколько попыток сделал пользователь, чтобы угадать правильное число? Как только вы угадаете правильный номер, программа должна рассказать вам, сколько догадок вы использовали, и определит ваш выигрыш.


Проверка времени реакции пользователя Как создать калькулятор на Питоне?