Курс 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. Работа с Enum в Python3.
  2. Проверка кортежей.
  3. Форматирование строк в Python
  4. Регистрация на хакатоне
  5. Форматирование строк с % в Python
  6. Создание объекта timedelta
  7. Обмен данными с asyncio.Queue
  8. split() без разделителя
  9. Деление в Python
  10. Метод gt в Python
  11. Работа с коллекциями Python
  12. TON Smart Challenge #2: участие и подготовка
  13. Игра «Камень, ножницы, бумага» — Python
  14. Оператор «and» в Python
  15. Динамическая типизация в Python
  16. Метод add для класса Vector
  17. Функции с необязательными аргументами
  18. Сложные типы данных в Python
  19. Блок else в циклах Python
  20. Метод rsub в Python: расширение функциональности вычитания
  21. Округление в Python
  22. Управление IP-адресами через прокси
  23. Выражения-генераторы в Python
  24. Добавление элементов в список
  25. Работа с zip()
  26. Работа с рекламными данными в Pandas
  27. Python Поверхностное Копирование
  28. Изменение элемента списка
  29. Поиск email
  30. Использование модуля __future__
  31. Присвоение и ссылки
  32. Генераторы в Python
  33. Измерение времени выполнения кода
  34. Циклы в Python
  35. Удаление специальных символов с помощью re.sub
  36. Регулярные выражения в Python
  37. Операторы увеличения и уменьшения переменной
  38. Работа с IP-адресами в Python
  39. Оператор in в Python
  40. Форматирование вывода с F-строками
  41. Структура данных deque в Python
  42. Установка и использование TensorFlow
  43. Работа с timedelta
  44. Python: библиотеки и функции
  45. Склеивание строк через метод join()

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