Курс 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. Импорт модулей в Python 3.12
  2. Отношения подклассов в Python
  3. Добавление Progressbar в Python
  4. Список и кортеж в Python
  5. Принципы программирования
  6. Область видимости переменных
  7. Применение функций в Python
  8. Работа с timedelta в Python
  9. Генерация резюме в Gensim
  10. Сравнение строк в Python
  11. Функции-генераторы в Python
  12. Создание генераторов
  13. Модуль antigravity: генерация координат
  14. Сравнение def и lambda функций в Python
  15. Склеивание строк через метод join()
  16. Сравнение неупорядоченных списков
  17. Генераторы в Python
  18. Работа с множествами в Python
  19. Поиск файлов по шаблону
  20. Поиск анаграмм с Counter
  21. Методы сравнения множеств
  22. Работа с модулем random
  23. Конкатенация строк с помощью join()
  24. Функция zip() в Python
  25. Методы обработки строк в Python
  26. Поиск подстроки в строке
  27. Строковое представление объектов
  28. Переопределение метода __or__()
  29. Работа с библиотекой xkcd
  30. Counter() — подсчет элементов
  31. Именованные срезы в Python
  32. Операции с кортежами
  33. Python itertools combinations() — группировка элементов
  34. Декораторы для регистрации функций
  35. Оператор in в Python
  36. Экспорт функций в Python
  37. Проверка класса объекта
  38. Счетчик в Python: most_common()
  39. Управление асинхронными задачами с помощью Semaphore
  40. Функция reduce() в Python
  41. Вывод переменной и строки в Python
  42. Работа с контекстным менеджером Pool
  43. Работа с множествами в Python
  44. Декоратор Ajax required
  45. Измерение времени выполнения

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