Учебник Python для начинающих с использованием условных операторов и модуля random
Делиться

Введение в игру
Игра «Камень, ножницы, бумага» была интересной и мобильной игрой с самого детства, в которую мы могли играть где угодно, когда было скучно. Игра проста. В ней участвуют два игрока, и каждый должен выбрать один из трёх вариантов: «Камень», «Ножницы, бумага» или «Ножницы». Камень изображается кулаком, «Ножницы» — двумя растопыренными пальцами, а «Бумага» — раскрытой ладонью.
Ниже приведены различные сценарии, которые могут произойти, и что они могут означать:
- Камень против Бумаги: Бумага побеждает Камень. Бумага побеждает.
- Камень против Ножниц: Камень ломает Ножницы. Камень побеждает.
- Бумага против ножниц: Ножницы режут бумагу. Ножницы побеждают.
- Те же знаки: ничья!
В этой статье мы воспользуемся нашим пониманием игры и начальными знаниями Python, чтобы написать компьютерную программу. Это будет сделано с помощью условных операторов Python: «if», «elif» и «else», а также модуля random, встроенного в Python. Мы научимся импортировать его и использовать его функции для добавления элемента случайности в нашу игру.
Реализация игры на Python
Теперь мы реализуем игру на Python. Для достижения нашей цели мы воспользуемся концепциями списков и рандомизации Python, используя модуль Python random.
Программа будет проходить следующим образом:
Программа предложит вам выбрать «Камень», «Ножницы» или «Бумага». Компьютер случайным образом выберет один из трёх вариантов. На основе различных сценариев, описанных выше, программа определит победителя и предложит повторить игру.
Определение списка и генерация ASCII-изображения
Сначала мы сгенерируем ASCII-изображение для игры «Камень, ножницы, бумага». Мы сохраним его в переменных с соответствующими именами, которые, в свою очередь, будут храниться в списке Python rps_list.
камень = «»» _______ —' ____) (_____) (____) (____) —.__(___) «»» бумага = «»» _______ —' ____)____ ______) _______) _______) —.__________) «»» ножницы = «»» _______ —' ____)____ ______) __________) (____) —.__(___) «»» rps_list = [камень, ножницы, бумага ]

Запрос данных от пользователя
Следующий шаг — получить ввод от пользователя. Мы будем использовать переменную user_choice для хранения выбранного пользователем варианта игры, а также выведем его на экран. Обратите внимание, что переменная user_choice будет хранить ввод в виде строки. Этот ключевой момент будет полезно помнить при использовании условных операторов для сравнения выбора пользователя и компьютера в следующей статье.
user_choice = input(«Что вы выбираете? Введите «камень» для «Камня», «ножницы» для «Ножниц» и «бумага» для «Бумаги») print(f»Пользователь выбирает {user_choice}»)
Случайный выбор компьютера
После того, как пользователь сделал свой выбор, мы заставим компьютер сделать случайный выбор. Для этого мы используем модуль случайного выбора. Подробнее об этом можно узнать по следующей ссылке:
случайный — генерация псевдослучайных чисел
Функция choice() модуля random позволяет нам случайным образом выбирать из списка Python, переданного ей в качестве параметра. Мы сохраним этот случайный выбор в переменной computer_choice и выведем его на экран.
import random computer_choice = random.choice(rps_list) print(f»Компьютер выбирает {computer_choice}»)
Кроме того, вы можете ознакомиться с этой статьей, в которой рассказывается, как включить рандомизацию в наш код с помощью модуля Python random. В ней подробно объясняется работа различных функций с простыми и понятными примерами:
Как реализовать рандомизацию с помощью модуля Python Random
Сценарии с использованием условных операторов
Теперь мы определим все различные сценарии, упомянутые в начале, в виде кода. Для этого мы будем использовать if, elif и else — условные операторы Python.
if computer_choice == камень и user_choice == 'ножницы': print(«Вы проиграли») elif computer_choice == камень и user_choice == 'бумага': print(«Вы выиграли») elif computer_choice == камень и user_choice == «камень»: print(«Рисовать») elif computer_choice == бумага и user_choice == 'бумага': print(«Рисовать») elif computer_choice == бумага и user_choice == 'ножницы': print(«Вы выиграли») elif computer_choice == бумага и user_choice == «камень»: print(«Вы проиграли») elif computer_choice == ножницы и user_choice == «ножницы': print(«Рисовать») elif computer_choice == ножницы и user_choice == «камень»: print(«Вы выиграли») elif computer_choice == ножницы и user_choice == 'paper': print(«Вы проиграли») else: print(«Ошибка»)
Как видно из вышеприведенного кода, мы использовали каждый сценарий, сравнивая выбор компьютера с выбором пользователя, который был сохранен в виде строки, что можно понять из кавычек, а затем распечатали результаты: выиграл ли пользователь, выиграл ли компьютер или же между ними была ничья.
Заключение
Приведенная выше программа представляет собой простой код Python, который легко понять и который дает введение в условные операторы Python и использование модуля random, в частности его функции выбора.
Хотя существует множество способов закодировать сценарии, приведённый выше код был явным и понятным для новичков, включающим условные операторы if, elif и else. Можете ли вы представить себе другой способ закодировать эту игру?
Источник: towardsdatascience.com



























