Курс Python → Экспорт функций в Python
Для экспорта функций и переменных из модуля в Python используется атрибут `__all__`. Этот атрибут представляет собой список имен, которые будут доступны для импорта из модуля. Если атрибут `__all__` не определен, то при импорте будут доступны все имена, не начинающиеся с символа подчеркивания.
Например, если у вас есть модуль `module.py` с функциями `foo` и `bar`, и вы хотите экспортировать только функцию `bar`, то в модуле нужно определить `__all__ = [‘bar’]`. Теперь при импорте из этого модуля будет доступна только функция `bar`.
Если атрибут `__all__` оставить пустым, то ни одно имя из модуля не будет экспортировано. При попытке импорта любого имени из такого модуля будет возбуждено исключение `AttributeError`, так как нет определенных имен для экспорта.
# Пример модуля module.py
def foo():
pass
def bar():
pass
__all__ = ['bar']
В данном примере только функция `bar` будет доступна при импорте из модуля `module`. Если попытаться импортировать функцию `foo`, то возникнет ошибка `AttributeError`, так как она не была экспортирована.
Другие уроки курса "Python"
- Цикл while в Python
- Модуль inspect
- Работа с очередями в Python
- Lambda Functions in Python
- Поиск шаблона в строке
- Комментарии в Python
- Метод lt для сортировки объектов
- Определение объема памяти объекта
- Модуль inspect: получение информации о объектах
- Работа с процессами в Python
- Изучение объектов с помощью dir()
- Работа с комплексными числами
- Работа с базами данных SQLite
- Избегание циклических зависимостей классов в Python
- Обработка элементов в Python
- Срезы в Numpy
- Операции с комплексными числами
- Оператор walrus в Python
- Работа с JSON в Python
- Работа с Enum в Python3.
- Модуль sys: основы
- Печать комбинаций в Python с Itertools
- Работа с файлами в Python
- Удаление элемента по индексу
- Названия переменных
- Подсчет частоты элементов с Counter
- Объединение кортежей в Python
- Установка Home Assistant
- Переворот последовательности
- Создание панели меню Tkinter
- Управление ресурсами с контекстными менеджерами
- Участие в сообществе @selectel
- Карта бомбоубежищ в Москве и Питере
- Цикл for в Python
- Работа с контекст-менеджером «with»
- Работа с кортежами в Python
- Форматирование строк в Python
- Безопасный доступ к значениям словаря
- Проектирование Singleton с метаклассом
- Лямбда-функции в Python
- Метод join() для объединения элементов в строку.
- Взаимодействие с внешними процессами в Python
- Документирование функций в Python
- Импорт в Python: список all
- Удаление URL-адресов в Python















