Пакети в Python

 3501

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

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

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

Імпорт модуля із пакета в Python

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

Тепер, якщо цей модуль містить функцію з ім’ям select_difficulty(), то для її використання слід вказати повне посилання:

from … import

Якщо вищенаведене посилання на функцію здається довгим, то ми можемо імпортувати модуль наступним чином:

І потім викликати функцію буде простіше:

Імпорт лише необхідного функціоналу з пакета

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

Тепер ми можемо безпосередньо викликати цю функцію:

Хоча цей спосіб виглядає простіше, але його не рекомендується використовувати. Вказування повного простору імен дозволяє уникнути плутанини та запобігає конфлікту імен.

Під час імпорту пакетів Python переглядає список каталогів, визначених в sys.path.

Оцінити статтю:

1 Зірка2 Зірки3 Зірки4 Зірки5 Зірок (23 оцінок, середня: 4,87 з 5)
Завантаження...

Залишити відповідь

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