Курс 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"
- Избегание изменяемых аргументов
- Сериализация данных в JSON с помощью json.dumps
- Структуры данных в Python
- Сортировка с параметром key
- Сортировка элементов в Python
- Работа с deque в Python
- Метод lt для сортировки объектов
- Копирование объектов в Python
- Получение текущей даты и времени с помощью datetime
- Расчет времени выполнения
- Создание итерируемых объектов
- Копирование и вставка текста в Python
- Работа с пользовательским вводом
- Константы в модуле cmath
- Метод setitem в Python
- Проверка списка: any() и all()
- Функция divmod() в Python
- Модуль pprint
- Подсчет элементов в Python
- Функции map, filter, reduce
- Оператор Walrus в Python 3.8
- Переопределение метода __eq__
- Порядок и длина множеств в Python
- Вычисление фазы комплексного числа
- Работа с файлами в Python
- Проверка подстроки в строке с помощью in
- Списки в Python: синтаксис представления
- Множества и frozenset
- Извлечение аудио из видео
- Объединение словарей в Python 3.5+
- Безопасные SQL-запросы в Python 3.11
- Форматирование кода на Python
- Декораторы в Python
- Проверка элементов списка условием
- Переворот строки с помощью срезов
- Именованные срезы в Python
- Получение обратного списка чисел
- Модуль Antigravity в Python 3
- Работа со словарями в Python
- Сохранение и загрузка модели в PyTorch
- Возврат нескольких значений из функции
- Работа с комплексными числами
- Функция enumerate() в Python















