Python — от первого запуска до первой программы
Наверняка, вам уже надоела скучная теория о программировании на Python и хочется как можно скорее перейти к увлекательной практике.
Но для того, чтобы написать свою первую строчку, необходимо установить Python на своё устройство. Конечно, во избежание проблем с зараженным ПО, лучше всего скачать программу с официального сайта разработчика.
Во-первых, это совершенно безопасно, во-вторых, там есть вся необходимая информация по установке, и, в-третьих, на ресурсе будет доступна самая свежая версия.
Установка проходит по стандартной схеме:
- Качаем программу для своей ОС.
- Открываем загрузочный файл.
- Жмем «Install Now», проставляем все нужные галочки.
- Выбираем путь инсталляции.
- Жмем «Install» и ожидаем завершения установки.
- После окончания установочного процесса, запускаем файл .exe.
Если всё прошло правильно, то перед нами появится окошко, очень похожее на стандартную командную строку. Но не помешает лишний раз проверить наш интерпретатор, поэтому попробуем сложить любые простые числа, и в итоге у нас должен отобразиться результат их суммы. Если всё получилось, то Python работает корректно.
Что может быть проще?
Готовьтесь, сейчас вы создадите на Python твою первую простую, но зато рабочую программу! Что для этого потребуется?
Запустите интерпретатор, и мы сможем написать в нем ту самую знаменитую фразу «Hello, world!». Конечно, это элементарный уровень, но именно этот процесс и демонстрирует нам, как программа посредством языка Python получает команды, обрабатывает и выдает конечный результат.
Итак, пишем строку:
Затем жмем на клавиатуре Enter и наслаждаемся полученным результатом в виде забавного приветствия:
Наши аплодисменты! Это первый шаг на пути к знакомству с миром языка Python! Не будем останавливаться на достигнутом, и попробуем немного усложнить саму программу. К тому же, интерактивное отображение кода легко создается, читается и редактируется, но для того, чтобы сохранять прогресс в отдельном проекте, необходимо изначально работать с файлами.
Создаем текстовый документ, сохраняем его, переименовываем его так, как душе угодно. Но самое главное – не забываем приписать в конце названия расширение «.py» (сокращение от Python), иначе файл не будет открываться корректно.
Откроем созданный файл и попытаемся немного углубиться в тему изучения базовых возможностей языка, усложнив изначальную программу. Добавим в неё несколько строк, чтобы она выглядела таким образом, а также, разберем каждую из них:
- Выводится приветственный текст на монитор при помощи команды print.
- Выводится вопрос (в данном случае «Как тебя зовут?»), ожидание заполнения строки с именем пользователя (name) и нажатия клавиши Enter.
- С помощью функции print текст выводится на экран. В конкретной ситуации на экране появляется значение из переменной функции name и надпись «, добро пожаловать в мир Python!».
- Четвертая строка ожидает нажатия клавиши Enter для завершения программы.
Видите, ничего сложного в этом нет! Достаточно строго соблюдать логику, синтаксис, пробелы и знаки препинания, чтобы конечный результат нас по-настоящему порадовал. Но зачем сидеть не месте, если можно попробовать что-то более сложное?
Крестики-нолики
На первый взгляд может показаться, что это слишком простая задача. Но ведь это логическая игра, поэтому сама программа должна подчиняться определенной логике, в которой мы сейчас попробуем разобраться.
Что такое крестики-нолики? Это одна из самых популярных игр с полями 3 на 3 клетки, где не требуется никаких дополнительных атрибутов, вроде костей, фишек, карт и пр., лишь ручка и листок. В нашем же случае это будет монитор и командная строка или текстовый файл, например, Notepad++.
Первое, что необходимо сделать – это задать поле с числами от 1 до 9, а поможет нам в этом функция range.
Для того, чтобы формат был для нас более понятным, мы напишем специальную функцию.
Что же получится, если мы запустим этот код?
Без введения данных эта игра превращается в статичную таблицу с числами, а нам нужен настоящий «экшн», так что внедряем в код функцию take_input.
Как мы могли заметить, при команде take_input она создает параметр player_token (крестик/нолик), и это зависит от игрока, который должен сделать ход. Но важно, чтобы наша игра не вышла за пределы чисел 1 и 9, и поэтому мы должны воспользоваться конструкциями try/except и if/else, которые позволяют разобраться, использовалась ли уже данная область или нет. Также, стоит указать на один важный момент – функция take_input не вернула значений, а лишь заменила данный список board.
Теперь нам необходимо внедрить функцию, которая будет проверять поле нашей игры, которую можно обозначить как check_win, хотя вы можете придумать любое другое удобное для себя название.
Опытные программисты прекрасно знают, что процесс проверки игры – это одна из самых популярных задач при обучении на курсах программирования. Главная её особенность в том, что 2 совершенно одинаковые задачи можно решить различными путями.
В нашем коде мы воспользовались кортежем (tuple) с координатами, по которым присуждается победа, и затем использовался цикл for, В том случае, если символы совпадали, то возвращался символ, соответствующий победе, в другом случае возвращалось значение False.
Не стоит забывать, что если строку, занятую победным символом, привести к логическому типу, то нам вернется True.
Теперь мы должны прописать функцию main, объединяющую в себе все функции, которые были описаны выше.
В чем же суть функции main? Здесь всё довольно просто.
Если переменная counter будет >4, то совершенно нет необходимости вызывать check_win, ведь до 5 хода победа невозможна. Для такой же цели была создана tmp, и мы отметили её значение и применили в строке №48. Конечно, явных плюсов в таком подходе нет, но зато он может здорово «разгрузить» системный процессов при обработке более крупных объемов информации.
Ну, что, перейдем к самой игре с помощью main(board)?
Если у вас возникли проблемы с отображением кириллических символов, то добавьте эту строку в самом верху кода.
Понравилось создавать программы и игры собственными руками? Тогда приходите на наш курс Python-разработчик. Здесь вы узнаете, что профессия программиста требует не только аналитического, но и творческого подхода. Опыт лучших педагогов, оснащенные классы, приятные акции и самые свежие знания – всё это Школа !