Skip to content

big-and-red/Module-1-practice

Repository files navigation

Основы Python. Практика

Репозиторий содержит практические задания по основам Python с автоматическими тестами и документацией.


Содержание


Структура проекта

  • 01_basics/ # Базовые концепции
  • 02_loops/ # Циклы
  • 03_data_types/ # Типы данных
  • 04_functions/ # Функции
  • 05_files/ # Работа с файлами
  • 06_exceptions/ # Обработка исключений
  • 07_generators/ # Генераторы
  • 08_additional/ # Дополнительные темы

Начало работы

  1. Клонируйте репозиторий:
git clone [email protected]:big-and-red/Module-1-practice.git
  1. Удалите привязку к исходному репозиторию:
git remote remove origin
  1. Создайте новый пустой репозиторий на GitHub
  2. Привяжите ваш локальный код к новому репозиторию:
git remote add origin https://github.com/ваш-username/имя-вашего-репозитория.git
  1. Отправьте код в ваш репозиторий:
git push -u origin main

Правила коммитов

Формат коммита:

[номер_раздела/тема]: краткое описание изменений

Примеры правильных коммитов:

[01/variables]: решены задачи на переменные
[02/loops]: добавлено решение задачи с циклом while
[03/lists]: выполнены задания по методам списков
[04/functions]: решены задачи на аргументы функций

Основные правила:

  1. Структура коммита:
    • [XX/тема] - номер раздела и тема
    • После двоеточия - краткое описание на русском языке
    • Глаголы в прошедшем времени ("решено", "добавлено", "исправлено")
  2. Когда создавать коммит:
    • После решения каждой отдельной задачи
    • После завершения блока связанных задач
    • После исправления ошибок в решении
  3. Содержание коммита:
    • Только завершенные решения
    • Один коммит = одна тема/задача
    • Код должен быть рабочим и проходить тесты

Темы и задания

  • 01_basics
    • Переменные и типы данных
    • Операторы
    • Условные конструкции
  • 02_loops
    • Цикл for
    • Цикл while
  • 03_data_types
    • Строки (strings)
    • Списки (lists)
    • Кортежи (tuples)
    • Словари (dictionaries)
    • Множества (sets)
  • 04_functions
    • Базовые функции
    • Аргументы функций
    • Возвращаемые значения
  • 05_files
    • Текстовые файлы
    • CSV файлы
    • JSON файлы
  • 06_exceptions
    • Обработка исключений
  • 07_generators
    • Основы генераторов
    • Генераторные выражения
  • 08_additional
    • Работа с датами и временем
    • Математические операции
    • Регулярные выражения
    • Работа с модулями

Пример задания:


def sum_range(start: int, end: int) -> int:
    """
    Вычислить сумму чисел в диапазоне от start до end включительно
    >>> sum_range(1, 5)
    15
    >>> sum_range(2, 4)
    9
    """
    return sum(range(start, end + 1))

Запуск тестов

  1. Каждый модуль можно запустить отдельно для проверки тестов:
python -m doctest module_name.py -v
  1. Или просто запустить модуль:
python module_name.py
  1. Тесты запускаются автоматически при выполнении модуля благодаря следующей конструкции:
if __name__ == "__main__":
    import doctest
    doctest.testmod()

Требования

Python 3.12+

About

Practical lessons for 1 module of my roadmap.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages