Tasks from avito python course
hw_1 - домашка 1 (игра про уточку)
hw_2 - домашка 2 (12 задач)
hw_3 - домашка 3 (игра крестики-нолики)
Игра крестики-нолики с двумя участниками.Основные характеристики:
-
В самом начале задаётся размер квадратного поля N (должен быть от 3 до 5). Если размер поля не соответствует ожидаемому, то выводится сообщение об ошибке, и запрос повторяется снова. Нужно вывести получившееся поле схематически в CLI.
-
Далее каждый игрок по порядку вводит свой ход в виде строки и столбца (например, a3). Нужно проверить, что ход является допустимым (ячейка существует и она свободна). Если ход недопустим, то вывести сообщение и повторить попытку ввода.
-
После хода выводится поле с выставленной меткой: для игрока 1 – крестик, для игрока 2 – нолик.
-
Игра заканчивается при наступлении одного из двух условий: – один из игроков собрал в ряд или по диагонали N своих меток – поле заполнено, т.е. ничья.
-
В конце игры вывести результат.
Ожидания от кода:
- разбит на функции
- существуют отдельные функции для: вывода сообщений, вычисления результата, проверки ввода, отображения поля и т.д.
- все функции имеют аннотации и докстринги
hw_4 - CLI-приложение для извлечения данных из HTML
- создать отдельный репозиторий для данного приложения
- настроить отдельный venv для данного приложения с установленными зависимостями из requirements.txt
- приложение должно реализовывать следующее:
- запускаться из командной строки такой командой python -m cliparse --xpath="//div" . Параметр из --xpath можно менять при каждом запуске
- аргумент --xpath не обязательный и имеет значение по умолчанию равное //*
- поиск осуществляется в HTML, который будет задан в файле html.py - пример. У каждого студента должен быть свой HTML
- команда должна выводить HTML элементов, найденных с помощью XPath, переданного в параметре --xpath
- программа должна быть разделена на модули (отдельные файлы)
hw_5 - Парсинг данных
- данные извлечены из HTML
- csv-файл содержит более 200 строк
- каждая строка имеет минимум 5 значений
- каждая строка имеет URL источника
- источник данных для каждого студента должен быть уникальным, для этого перед выполнением его нужно занести в таблицу
hw_6 - Работа по классам
Описание задания: https://github.com/siauPatrick/mai-python/blob/master/05-samoe-neobhodimoe-o-klassah/issues.md#issue-01