Курс 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. Отображение HTML кода в Python
  2. Установка и использование Virtualenv
  3. Вызов функций по строке в Python.
  4. Создание списков в Python
  5. Метод pos в Python
  6. Оператор «not» в Python
  7. Использование модуля __future__
  8. Генераторы в Python
  9. Работа с процессами в Python
  10. Обновление данных через PUT запрос
  11. Назначение максимального и минимального значения переменной в Python.
  12. Конкатенация строк с помощью join()
  13. Работа с множествами в Python
  14. Таймер обратного отсчета
  15. Основы работы с os
  16. Инверсия списка и строки
  17. Дефолтные параметры в Python
  18. Модуль functools в Python
  19. Копирование объектов в Python
  20. Определение имен функций
  21. Декоратор Ajax required
  22. Создание словаря через dict comprehension
  23. Работа с исключениями в Python
  24. Модуль Operator в Python
  25. Установка виртуального окружения Python
  26. Конвертация текстовых чисел с помощью Numerizer
  27. Копирование файлов с shutil()
  28. None в Python: использование и особенности
  29. Перезапуск ячейки в Jupyter Notebook с dostoevsky
  30. Создание коллекций из генератора
  31. Работа с переменными в Python
  32. Объединение множеств в Python
  33. Установка переменной среды в Python
  34. Определение индекса элемента списка
  35. Метод join() для объединения строк
  36. kwargs в Python
  37. Проекты на Python
  38. Метод rpow в Python
  39. Форматирование вывода списков
  40. Работа с кортежами в Python
  41. Pillow: работа с изображениями
  42. Декораторы с @wraps
  43. Подсчет элементов в списке с Counter
  44. Defaultdict в Python
  45. Объединение словарей в Python
  46. Функции range() в Python

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