Курс 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"

  1. Избегание изменяемых аргументов
  2. Сериализация данных в JSON с помощью json.dumps
  3. Структуры данных в Python
  4. Сортировка с параметром key
  5. Сортировка элементов в Python
  6. Работа с deque в Python
  7. Метод lt для сортировки объектов
  8. Копирование объектов в Python
  9. Получение текущей даты и времени с помощью datetime
  10. Расчет времени выполнения
  11. Создание итерируемых объектов
  12. Копирование и вставка текста в Python
  13. Работа с пользовательским вводом
  14. Константы в модуле cmath
  15. Метод setitem в Python
  16. Проверка списка: any() и all()
  17. Функция divmod() в Python
  18. Модуль pprint
  19. Подсчет элементов в Python
  20. Функции map, filter, reduce
  21. Оператор Walrus в Python 3.8
  22. Переопределение метода __eq__
  23. Порядок и длина множеств в Python
  24. Вычисление фазы комплексного числа
  25. Работа с файлами в Python
  26. Проверка подстроки в строке с помощью in
  27. Списки в Python: синтаксис представления
  28. Множества и frozenset
  29. Извлечение аудио из видео
  30. Объединение словарей в Python 3.5+
  31. Безопасные SQL-запросы в Python 3.11
  32. Форматирование кода на Python
  33. Декораторы в Python
  34. Проверка элементов списка условием
  35. Переворот строки с помощью срезов
  36. Именованные срезы в Python
  37. Получение обратного списка чисел
  38. Модуль Antigravity в Python 3
  39. Работа со словарями в Python
  40. Сохранение и загрузка модели в PyTorch
  41. Возврат нескольких значений из функции
  42. Работа с комплексными числами
  43. Функция enumerate() в Python

Marketello читают маркетологи из крутых компаний