Академия Онлайн

Python 101

Курс для тех, кто только начинает писать код и хочет быстро перейти от простых примеров к небольшим полезным программам. Материал построен вокруг практики: каждую неделю студенты пишут мини-инструмент, разбирают ошибки и улучшают читаемость кода.

Для кого курс

  • Студенты без опыта программирования.
  • Аналитики, которым нужны простые скрипты для ежедневной работы.
  • Специалисты поддержки, желающие автоматизировать повторяющиеся задачи.
  • Все, кто хочет понять основы Python перед более сложными курсами.

Что понадобится

  • Ноутбук с Python 3.11 или новее.
  • Любой редактор кода: VS Code, PyCharm Community или аналог.
  • Умение работать с файлами и папками на базовом уровне.
  • Готовность много экспериментировать в интерактивной консоли.

Неделя 1. Первые программы

Темы

  • Установка Python и проверка окружения.
  • Запуск скрипта из терминала.
  • Переменные и простые выражения.
  • Типы данных: int, float, str, bool.
  • Ввод через input() и вывод через print().
  • Форматирование строк через f-strings.
  • Комментарии и понятные имена переменных.

Практика

  • Написать конвертер минут в часы и дни.
  • Сделать расчет стоимости обучения с учетом скидки.
  • Вывести персональное приветствие для студента.
  • Исправить скрипт с типичными ошибками типов.

Домашнее задание

Сделать калькулятор учебной нагрузки. Скрипт должен спросить количество предметов, число занятий в неделю и среднюю длительность занятия, а затем вывести общую нагрузку в часах.

Неделя 2. Логика и функции

Темы

  • Условия if, elif, else.
  • Логические операторы and, or, not.
  • Циклы for и while.
  • Списки и базовые операции над ними.
  • Функции, параметры и возвращаемые значения.
  • Область видимости переменных.
  • Импорт стандартных модулей.

Практика

  • Проверить, сдан ли курс по набранным баллам.
  • Посчитать средний балл группы.
  • Написать функцию для нормализации имени студента.
  • Сгенерировать простое расписание занятий.

Домашнее задание

Сделать программу, которая принимает список оценок, считает средний балл, минимальную и максимальную оценку, а также выводит рекомендации: пересдать, доработать или можно идти дальше.

Неделя 3. Файлы и исключения

Темы

  • Чтение и запись текстовых файлов.
  • Кодировка UTF-8 и переносы строк.
  • CSV-файлы и простая табличная обработка.
  • Исключения try, except, finally.
  • Сообщения об ошибках для пользователя.
  • Разделение программы на небольшие функции.
  • Минимальная структура проекта.

Практика

  • Прочитать список студентов из файла.
  • Найти пустые строки и повторяющиеся записи.
  • Сформировать отчет в отдельный файл.
  • Обработать ситуацию, когда файла нет.

Домашнее задание

Сделать проверку списка студентов. Программа должна прочитать CSV-файл, найти строки без email, посчитать количество групп и сохранить отчет.

Финальный проект

Студент выбирает одну задачу:

  • CLI-инструмент для расчета дедлайнов по учебным задачам.
  • Проверка CSV-ведомости на пропуски и некорректные оценки.
  • Генератор персональных писем студентам.
  • Небольшой файловый органайзер для материалов курса.

Контрольные вопросы

  • Чем отличается строка "123" от числа 123?
  • Когда лучше использовать цикл for, а когда while?
  • Почему функцию удобнее тестировать, если она возвращает значение?
  • Что произойдет, если открыть несуществующий файл без обработки ошибки?
  • Зачем разбивать длинный скрипт на функции?

Лабораторные работы

Лабораторная 1. Консольный помощник студента

Студент пишет программу, которая спрашивает имя, группу, количество предметов и количество часов самостоятельной работы. На выходе программа формирует понятную сводку и рекомендацию по распределению времени.

Проверяется:

  • корректное чтение пользовательского ввода;
  • преобразование строк в числа;
  • форматирование результата;
  • обработка пустых значений;
  • читаемость имен переменных.

Лабораторная 2. Анализ оценок

Нужно обработать список оценок, найти средний балл, количество пересдач и студентов с отличным результатом. Дополнительно программа должна выводить короткое текстовое заключение.

Проверяется:

  • использование списков;
  • циклы и условия;
  • вынесение повторяющейся логики в функции;
  • аккуратный вывод результата;
  • работа с граничными случаями.

Лабораторная 3. Проверка CSV-файла

Программа читает ведомость из CSV-файла и ищет ошибки: пустые email, повторяющиеся строки, отсутствующие группы и некорректные оценки.

Проверяется:

  • открытие файла в правильной кодировке;
  • разбор строк;
  • обработка исключений;
  • запись отчета;
  • понятные сообщения для пользователя.

Критерии оценки

  • Код запускается без ручной правки путей.
  • Ошибки пользователя обрабатываются понятным сообщением.
  • Функции не становятся слишком длинными.
  • Итоговый отчет легко прочитать без знания исходного кода.
  • Студент может объяснить, почему выбрал такую структуру программы.

Типичные ошибки

  • Сравнение строки и числа без преобразования типа.
  • Использование магических чисел без пояснения.
  • Один большой скрипт без функций.
  • Игнорирование ситуации, когда файл не существует.
  • Слишком общие имена переменных: a, b, data1.

Дополнительные темы

  • Виртуальные окружения и установка пакетов.
  • Простые unit-тесты для функций.
  • Структура проекта из нескольких файлов.
  • Чтение аргументов командной строки.
  • Основы форматирования кода через black.

Результат

После курса студент сможет написать небольшой CLI-инструмент, обработать файл с данными, аккуратно оформить ошибочные ситуации и подготовиться к изучению автоматизации, backend-разработки или анализа данных.