# tools package

## Submodules

## tools.fix_python_project module

Модуль исправления структуры Python-проекта.

Автоматически выполняет: 1. Удаление BOM-маркеров из файлов 2. Создание недостающих __init__.py 3. Логирование всех операций

Использование: python fix_python_project.py [путь_к_проекту]

class ProjectFixer(root_dir='.')

  Базовые классы: `object`

  Исправляет структуру Python-проекта.

  Атрибуты:

    root_dir: Корневая директория проекта. log: Лог выполненных операций.

  Параметры:

    root_dir (str)

  __init__(root_dir='.')

    Инициализирует экземпляр ProjectFixer.

    Параметры:

      root_dir (str) – Корневая директория проекта. По умолчанию „.“.

  remove_bom(filepath)

    Удаляет BOM-маркер из файла.

    Параметры:

      filepath (str) – Путь к файлу.

    Результат:

      True если BOM был удалён.

    Тип результата:

      bool

    Исключение:

      Exception – При ошибке чтения/записи.

  should_skip_init(dir_path)

    Проверяет нужно ли пропустить директорию.

    Параметры:

      dir_path (str) – Путь к директории.

    Результат:

      True если директорию нужно пропустить.

    Тип результата:

      bool

  needs_init_py(dir_path)

    Проверяет нужно ли создать __init__.py.

    Параметры:

      dir_path (str) – Путь к директории.

    Результат:

      True если __init__.py требуется.

    Тип результата:

      bool

  create_init_py(dir_path)

    Создаёт файл __init__.py.

    Параметры:

      dir_path (str) – Путь к директории.

    Результат:

      True если файл создан.

    Тип результата:

      bool

    Исключение:

      Exception – При ошибке создания.

  process_directory()

    Рекурсивно обрабатывает проект.

  save_log(log_file='project_fix.log')

    Сохраняет лог операций в файл.

    Параметры:

      log_file (str) – Имя файла лога. По умолчанию „project_fix.log“.

## tools.logger module

Модуль настройки логгера.

Содержит функцию для создания и настройки логгера с выводом в стандартный поток.

get_logger(name)

  Создаёт и настраивает логгер.

  Параметры:

    name (str) – Имя логгера (обычно __name__ модуля).

  Результат:

    Настроенный экземпляр логгера.

  Тип результата:

    logging.Logger

  Пример:

    logger = get_logger(__name__) logger.debug(«Тестовое сообщение»)

## Module contents

Package initialization.