Курс 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. Метод pop() списка
  2. Отрицательные индексы списков в Python
  3. Счетчик в Python: most_common()
  4. Python: динамическая типизация и проверка типов
  5. Изменение списка срезами
  6. Форматирование данных с pprint
  7. Lambda-функция в Python: использование с map() и sum()
  8. Генератор бросков кубиков
  9. SciPy: широкий функционал для математических операций
  10. Оператор объединения словарей
  11. Взаимодействие с sys
  12. Создание списка дат
  13. Введение в Python
  14. Подсчет элементов с помощью Counter из collections
  15. Изменяемые и неизменяемые объекты
  16. Основы Python за 14 дней
  17. Импорт модулей в Python 3.12
  18. Инверсия списков и строк в Python
  19. Форматирование даты с strftime()
  20. Применение функции map() с лямбда-функциями
  21. Python Метод sleep() из time
  22. globals и locals
  23. Навыки Python: строки, типы данных
  24. Оформление кода по PEP 8
  25. Проверка класса объекта
  26. Метод __complex__ в Python
  27. Удаление элемента по индексу
  28. Метод split() для разделения строк
  29. Преобразование символов с помощью map
  30. Замыкания в Python
  31. Получение текущей даты и времени с помощью datetime
  32. Форматирование объектов с модулем pprint
  33. Измерение времени выполнения кода
  34. Определение индекса элемента списка
  35. Генераторы в Python
  36. Шаблоны и наследование в Flask
  37. Beautiful Soup — извлечение данных из HTML
  38. Принципы LSP и ISP в Python
  39. Работа с базами данных SQLite
  40. Python Enumerate
  41. Бинарный поиск
  42. Оператор морж в Python 3.8
  43. Печать комбинаций в Python с Itertools
  44. Нарезка списков в Python
  45. Получение текущей даты в Python
  46. EMOT преобразование эмодзи в текст

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