Что вы узнаете | Основные концепции программирования (переменные, функции, если утверждения) |
Инструменты, которые вам понадобятся | Современный браузер |
Время, необходимое для завершения | 30 минут |
Что вы будете построить
В этом проекте вы узнаете основные концепции программирования, создав игру «Rock-Paper-Scissors», используя Python и Micro: Bit. Вы можете найти последний проект в Microsoft делает код И вы можете скачать код из моего Репозиторий GitHub Отказ
инструкции
Посетите Microsoft делает код Веб-сайт и выберите Micro: Bit. Создайте новый проект и дайте ему имя, которое вам нравится, то расширяйте параметры кода и выберите Только Python из раскрывающегося меню. Мы собираемся использовать акселерометр и экран Micro: BIT, чтобы построить нашу игру.
Добавьте событие on_shake, чтобы запустить код, когда вы встряхиваете микро: бит
Определите функцию on_ gesture_shake ()
Отказ Эта функция будет содержать все код игры и выполнить, когда вы встряхиваете микро: бит.
def on_gesture_shake(): pass input.on_gesture(Gesture.SHAKE, on_gesture_shake)
В программировании Функции являются блоками утверждений, которые выполняют определенные задачи.
Создайте 2 игрока и выберите случайного объекта (рок, бумага или ножницы) для каждого игрока
Каждый игрок выбирает один из 3 объектов (рок, бумага или ножницы). В программировании мы предпочитаем использовать цифры вместо слов, и, таким образом, мы собираемся назначить номера 1, 2 и 3 к объектам породы, бумаги и ножницы соответственно. Следовательно, вам нужно только выбрать случайное число в диапазоне от 1 до 3 для каждого игрока. Внутри On_ Gesture_shake
Функция, создать две переменные Рука1
и Рука2
для первого и второго игрока соответственно. Используйте Randint ()
функция для создания 2 случайных чисел и хранить их в переменных Рука1
и рука2
.
hand1 = randint(1, 3) hand2 = randint(1, 3)
Переменные используются для хранения информации и данных. Эти данные могут быть номерами, буквами, словами.
Randint ()
Функция используется для генерации случайных целочисленных чисел в указанном диапазоне. Мы используем два параметра для указания нижнего и более высокого предела. Например, Рэндинт (1, 10)
вернет случайные целые числа от 1 до 10.
Показать выбор игроков
Используйте команду:
basic.show_number(hand1)
Чтобы показать выбор первого игрока на светодиодах. Что ты заметил? Число в диапазоне от 1 до 3 появилось, а не фактический выбор игрока (рок, бумага или ножницы). Это происходит потому, что компьютер не знает, что мы символизируем объекты с числами.
Мы собираемся использовать случайные номера, которые хранятся в рука1.
и Рука2
Чтобы выбрать изображение, чтобы показать на светодиодах. Если номер 1, показать изображение скалы. Если номер 2, показать изображение листа бумаги. Если номер не 1, ни 2 (число 3), показать изображение ножниц.
Если
Заявление – это условное утверждение программирования, которое выполняет различные действия в зависимости от того, оценивается ли данное условие для True или False.
Используйте Если
утверждение.
if hand1 == 1: basic.show_icon(IconNames.SMALL_SQUARE) elif hand1 == 2: basic.show_icon(IconNames.SQUARE) else: basic.show_icon(IconNames.SCISSORS)
Напишите те же команды для второго игрока. Не забудьте изменить Рука1
Переменная к рука2
.
if hand2 == 1: basic.show_icon(IconNames.SMALL_SQUARE) elif hand2 == 2: basic.show_icon(IconNames.SQUARE) else: basic.show_icon(IconNames.SCISSORS)
Определить победителя
Показать номер 1, если первый игрок выигрывает. Показать номер 2, если второй проигрыватель выигрывает и показать 0, если это галстук. Используйте несколько Если
утверждения (вложенные, если заявления), чтобы определить победителя.
if hand1 == 1: # Rock if hand2 == 1: # Rock basic.show_number(0) elif hand2 == 2: # Paper basic.show_number(2) else: # Scissors basic.show_number(1) elif hand1 == 2: # Paper if hand2 == 1: # Rock basic.show_number(1) elif hand2 == 2: # Paper basic.show_number(0) else: # Scissors basic.show_number(2) else: # Scissors if hand2 == 1: # Rock basic.show_number(2) elif hand2 == 2: # Paper basic.show_number(1) else: # Scissors basic.show_number(0)
Улучшить пользовательский опыт
Как вы можете рассмотреть, иконы игроков (выбор) появляются и исчезают быстро. Используйте команду Пауза (500)
Чтобы остановить игру на 0,5 секунды (это означает, что микро: бит показывает значок в течение 0,5 секунды). Затем используйте команды Clear_screen ()
и Пауза (500)
Чтобы остановить игру в течение 0,5 секунды, прежде чем показывать следующий значок.
def on_gesture_shake(): hand1 = randint(1, 3) hand2 = randint(1, 3) if hand1 == 1: # Rock basic.show_icon(IconNames.SMALL_SQUARE) elif hand1 == 2: # Paper basic.show_icon(IconNames.SQUARE) else: # Scissors basic.show_icon(IconNames.SCISSORS) basic.pause(500) basic.clear_screen() basic.pause(500) if hand2 == 1: # Rock basic.show_icon(IconNames.SMALL_SQUARE) elif hand2 == 2: # Paper basic.show_icon(IconNames.SQUARE) else: # Scissors basic.show_icon(IconNames.SCISSORS) basic.pause(500) basic.clear_screen() basic.pause(500) if hand1 == 1: # Rock if hand2 == 1: # Rock basic.show_number(0) elif hand2 == 2: # Paper basic.show_number(2) else: # Scissors basic.show_number(1) elif hand1 == 2: # Paper if hand2 == 1: # Rock basic.show_number(1) elif hand2 == 2: # Paper basic.show_number(0) else: # Scissors basic.show_number(2) else: # Scissors if hand2 == 1: # Rock basic.show_number(2) elif hand2 == 2: # Paper basic.show_number(1) else: # Scissors basic.show_number(0) input.on_gesture(Gesture.SHAKE, on_gesture_shake)
Поздравляю! Вы разработали простую рок-бумагу-ножницы с Python и Micro: Bit. Если вы хотите поделиться проектом с друзьями, вы можете выбрать кнопку обмена.
Что дальше?
В следующем уроке вы узнаете, как сделать переменные для хранения текущей игры Round Round и игроков. Быть в курсе!
Больше статей: foteinisavvidou.codes
Здравствуйте, меня зовут Фотени Саввиду, и я являюсь электрическим и компьютерным инженерным учеником, который любит писать код и создавать красивые вещи. Я заинтересован в информатике, AI и особенно в приложениях технологий в здравоохранении и образовании. Я хочу использовать технологию для улучшения повседневной жизни людей и создать более устойчивый 🌱, доступный и включенный 🧑 🤝🧑 мир.
✨ Блог |. Linkedin. | Twitter |. Гадость
Оригинал: “https://dev.to/sfoteini/create-a-rock-paper-scissors-game-with-python-and-micro-bit-part-1-445o”