Блок 1. Основы Python для автоматизацииБыстрый вход в Python как в рабочий язык автоматизатора
Вы изучите:- Основной синтаксис Python и написание первых программ
- Арифметические операции, приоритет операторов и работу с числами
- Типы данных в Python: примитивные, кортежи, их неизменяемость
- Основные конструкции языка: условные операторы, циклы и функции
- Работу со строками: операции, методы, интерполяцию, срезы
- Анализ и исправление ошибок, отладку, использование линтера
Результат: пишете базовый Python-код, понимаете логику, умеете решать задачи и читать чужие решения
Блок 2. Списки в PythonВы изучите:- Синтаксис списков в Python и основные способы их модификации
- Обход списков с помощью простых циклов for, циклов с индексами и вложенных циклов
- Концепцию ссылочных данных и правильную обработку списков в функциях
- Срезы списков, деструктуризацию и распаковку данных
- Вложенные списки и применение списков для обработки строк
- Основные алгоритмы сортировки списков и оценку их сложности по метрике Big O
Результат: можете создавать и использовать итерируемые объекты, решать алгоритмические задачи с применением структур как стек, оценивать сложность алгоритмов и эффективно работать с данными в программах на Python
Блок 3. Словари и множества в PythonВы изучите:- Изменение и дополнение словарей, включая использование defaultdict
- Работу с итераторами словарей: keys(), values(), items() для обхода данных
- Синтаксис и основные манипуляции с множествами
- Стандартные операции над множествами
- Методы объектов множеств для выполнения операций с коллекциями
- Внутреннее устройство хеш-таблиц и принцип работы словарей на их основе
Результат: можете создавать и модифицировать словари и множества, выполнять над ними операции, а также понимать внутреннее устройство хеш-структур и описывать с их помощью сущности любой предметной области
Блок 4. Командная строка и Linux-базаВы изучите:- Как устроены операционные системы
- Командную строку: интерфейс, навигацию, файловую структуру
- Чтение и поиск в файлах (grep), работу с потоками и пайпами
- Создание, перемещение и удаление файлов и директорий
- Переменные окружения и историю команд
- Пользователей, группы, sudo, права доступа
- Пакетный менеджер и установку программ из консоли
Результат: уверенно чувствуете себя в терминале, быстро находите нужные файлы, логи и конфиги, умеете запускать скрипты и утилиты, настраивать окружение под себя
Блок 5. Git и работа с кодом в командеВы изучите:- Базовый рабочий процесс с Git
- Локальный репозиторий и интеграцию с GitHub
- Рабочую директорию, индекс и коммиты
- Анализ изменений: status, diff, история (log)
- Отмену изменений в рабочей директории и откат коммитов
- Изменение последнего коммита
- Перемещение по истории
- Игнорирование файлов (.gitignore)
- Временное сохранение через stash
- Открытые проекты: как подключаться и работать по правилам команды
Результат: не боитесь Git, аккуратно ведёте историю, можете откатиться из любой ситуации и спокойно работать с общими репозиториями и pull-requestами
Блок 6. Python: настройка рабочего окруженияПодготовка Python-проекта к разработке и автоматизации тестирования.
Вы изучите:- Установку интерпретатора Python и работу с интерактивной средой REPL
- Создание структурированных Python-проектов и управление их зависимостями
- Концепцию виртуальных окружений для изоляции проектов
- Основы линтинга и форматирования кода как важной практики разработки
- Особенности Python, влиющие на организацию локального окружения
- Локальный запуск скриптов и установленных пакетных утилит
- Использование пакетного менеджера для организации проекта
Результат: умеете поднять Python-проект с нуля, управлять зависимостями и запускать код и тесты в реальном рабочем окружении
Проект «Игры разума»Студенты учатся настраивать рабочее окружение для тестирования и разработки, запускать любые программы, написанные на Python. Знакомятся с интерпретатором языка (REPL) и его возможностями по быстрой отладке и проверке работы небольших кусков кода. Знакомятся с Poetry — утилитой, через которую происходит управление проектами: установка и обновление дополнительных библиотек, публикация пакета и многое другое.