Пакеты в Python

  Юрий  | 

  Обновл. 31 Мар 2023  | 

 2454

Пакет — это каталог (папка), который может включать другие каталоги или модули. Модуль — это файл с исходным кодом, имеющий расширение .py. Пакеты используются для формирования пространства имен, что позволяет работать с модулями через указание уровня вложенности (с помощью оператора .). Для импортирования пакетов используется тот же синтаксис, что и для работы с модулями.

Предположим, мы разрабатываем игру. Одна из возможных организаций наших пакетов и модулей может быть следующей:

Примечание: Каталог должен содержать файл с именем __init__.py, чтобы Python мог рассматривать этот каталог как пакет. Данный файл можно оставить пустым, но обычно туда помещают код инициализации этого пакета.

Импорт модуля из пакета в Python

В Python мы можем импортировать модули из пакетов, используя точку .. Например, если мы хотим импортировать модуль start из вышеприведенного пакета game, нам нужно написать следующее:

Теперь, если этот модуль содержит функцию с именем select_difficulty(), то для ее использования следует указать полную ссылку:

from … import


Если вышеприведенная ссылка на функцию кажется длинной, то мы можем импортировать модуль следующим образом:

И затем вызывать функцию будет проще:

Импорт только необходимого функционала из пакета

Другой способ импортировать только необходимый функционал (функцию, класс или переменную) из модуля внутри пакета:

Теперь мы можем напрямую вызвать эту функцию:

Хотя этот способ выглядит проще, но его не рекомендуется использовать. Указание полного пространства имен позволяет избежать путаницы и предотвращает конфликт имен.

При импорте пакетов Python просматривает список каталогов, определенных в sys.path.


Оценить статью:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (10 оценок, среднее: 4,60 из 5)
Загрузка...

Добавить комментарий

Ваш E-mail не будет опубликован. Обязательные поля помечены *