При создании пакета Python мне предлагается создать пустой файл с именем init .py. Я не понимаю, почему мне нужно создать этот файл. Сценарий сборки distutils
не изменяет его, поэтому пять сборок позже остаются пустыми. Какова цель?В чем заключается цель __init__.py?
0
A
ответ
5
Это сигнал Python, что папка представляет собой пакет, а не только папку. Он также содержит код инициализации, который запускается, когда пакет равен import
ed в скрипт.
См. the docs on the subject для получения дополнительной информации. Наиболее актуальный экстракт:
В
__init__.py
файлы необходимы, чтобы Python лечить каталоги как содержащие пакеты; это делается для предотвращения каталогов с общим именем, напримерstring
, из непреднамеренно , скрывающих действующие модули, которые появляются позже на пути поиска модуля. В простейшим случаем,__init__.py
может быть просто пустым файлом, но он может также выполнить код инициализации для пакета или установить переменную__all__
, описанную ниже.
Смежные вопросы
- 1. В чем разница между __init__.py и __main__.py?
- 2. Как изменилось __init__.py?
- 3. Ошибка импорта __init__.py
- 4. using __init__.py
- 5. Невозможно использовать __init__.py
- 6. ImportError __init__.py, колба
- 7. Ошибка Sklearn __init__.py
- 8. Пробный патч с __init__.py
- 9. В чем заключается цель указания четкого цвета в OpenGL ES?
- 10. Импорт файлов в Python из __init__.py
- 11. В чем заключается цель комментирования имен аргументов функции?
- 12. В чем заключается цель добавления скомпилированных методов Func?
- 13. Метод импорта из __init__.py
- 14. Ошибка Tweepy: Нет __init__.py
- 15. __init__.py и импортные зависимости
- 16. импорт Python с __init__.py
- 17. __import__ импортирует только __init__.py
- 18. Простая миграция на __init__.py
- 19. Python упаковки - что __init__.py
- 20. (Python) Создание пакетов __init__.py
- 21. Python __init__.py и классы
- 22. Когда код в __init__.py запускается?
- 23. Удаляется __pycache__ и __init__.py
- 24. __import __() вызывает __init__.py дважды?
- 25. __init__.py в текущем рабочем каталоге
- 26. Как создать таблицы SQLAlchemy в __init__.py?
- 27. API пакета в python. В __init__.py?
- 28. Создание пакетов и __init__.py содержание
- 29. Какова цель прямого вызова __init__?
- 30. Как запустить код в __init__.py
Вы действительно должны хотя бы взглянуть на учебник, когда вы что-то не понимаете. Это по какой-то причине. – abarnert
@abarnert - Учебник, который я использовал (http://guide.python-distribute.org/quickstart.html), не упомянул о том, для чего он нужен, просто для его создания. – Nathan2055
Этот учебник предназначен для настройки ваших пакетов для совместного использования с другими людьми. Он более или менее предполагает, что вы уже понимаете, как пакеты работают на базовом уровне. –