Python: Настройка окружения
Теория: Подготовка проекта
Часто код программы разбит на несколько текстовых файлов с расширением языка. Эти файлы, их еще называют модули, принято собирать в пакет, общий проект. Для управления пакетами существуют специальные утилиты пакетные менеджеры. Они позволяют создавать новые проекты, устанавливать сторонние пакеты и выкладывать наш проект на Github и другие репозитории.
В нашем курсе в качестве пакетного менеджера мы будем использовать утилиту uv
Установим ее по инструкции с сайта:
Если способ выше не работает, то можете попробовать другие способы установки в нашей инструкции
После установки проверьте, что утилита работает
uv выполняет множество важных задач, с которыми мы будем знакомиться в течение курса. Сейчас нас интересует ее базовое использование – создание, инициализация, нового проекта.
Для создания нового проекта нужно выполнить две вещи:
- Создать директорию проекта – место, внутри которого будут располагаться все файлы с кодом. Эта директория называется корнем проекта.
- Запустить команду инициализации
uv initв корне проекта.
В результате менеджер создаст такую структуру директорий
По умолчанию uv создает шаблонный файл main.py. Удалим его и создадим поддиректорию нашего проекта hexlet_hello_world.
Такая структура разделяет компоненты с рабочим кодом от общих компонентов настройки проекта. Так все модули нашего приложения будут лежать в директории проекта hexlet_hello_world. А все файлы конфигурации проекта лежат в корне.
Среди этих файлов README.md - текстовое описание нашего проекта, .python-version - файл с указанием версии Python, нужен для установки проекта, и pyproject.toml - файл с описанием метаданных и настроек нашего проекта. Рассмотрим его подробнее.
pyproject.toml — это текстовый файл, внутри которого данные хранятся в TOML формате. Строчки вида [project] описывают секции с парами ключ = "значение". В примере выше значением ключа name будет "hexlet-hello-world".
Самая важная секция для нас сейчас - [project]. В ней описываются общие данные проекта. Здесь хранится версия version, описание description, название name. Также указана требуемая версия Python requires-python и список зависимостей dependencies. О них поговорим позже.
После завершения процесса инициализации можно приступать к самому главному — написанию кода. Откроем наш проект в редакторе, это можно сделать командой code . и создадим в директории hexlet_hello_world новый файл example.py. Добавим в него строчку print("Hello from python project!") и запустим. Запускать код нужно обязательно из корневой директории проекта, указывая полный путь от нее до файла.

