Подразумеваемые неймспейсы или неявные пакеты.
Этот функционал добавлен в Python 3.3
Что он означает?
Ранее, до 3.3 пакетами считались лишь директории, в которых есть файл __init__.py.
Этот файл одновременно являлся свидетельством того, что директория это Python-пакет, и служил "телом" этого пакета. То есть местом, где можно написать код, как это делается внутри модуля. Этот код исполняется в момент импорта пакета, так что его принято называть "код инициализации пакета".
Начиная с версии 3.3 Любая директория считается пакетом и Python будет пытаться использовать любую директорию для импорта.
Конечно, не любую в файловой системе, а только те что находятся в sys.path.
Это значит, что теперь __init__.py нужно делать только если:
🔸 вам требуется создать код инициализации пакета
🔸 нужна совместимость со старыми версиями Python
На мой взгляд это немного упрощает разработку, делает её чище, но с другой стороны убивает некоторую однозначность происходящего.
Например, я создал репозиторий со своей библиотекой и рядом положил код примеров или тестов.
repo_name/
my_library/
__init__.py
main.py
examples/
exam1.py
exam2.py
В этом репозитории пакетом является только my_library, остальные директории это не пакеты, это просто дополнительный код в файлах. Директория examples не добавлена в sys.path, в ней нет рабочих модулей. Но если она лежит рядом с my_library, то Python вполне сможет импортнуть из неё модули, так как посчитает что examples это валидный пакет.
Конечно, пример несколько надуманный. Никто не будет добавлять корень репозитория в sys.path. Но, я думаю, суть ясна. Иногда директория это просто директория а не пакет!
#basic#pep
🇺🇸 Une éruption du volcan Kilauea a commencé à Hawaï. Les fontaines de lave atteignent 350 m de hauteur, a indiqué l’Institut d’études géologiques des États-Unis (USGS).
#étatsunis#volcan#éruption
🇮🇩 Six éruptions du volcan Semeru ont été enregistrées en Indonésie, les cendres ont atteint 4,7 km d'altitude, a rapporté l'agence Antara, citant les données du poste d'observation de l'activité volcanique.
#indonésie#volcan#éruption
🇮🇩 Le volcan Dukono, situé dans l'est de l'Indonésie, est entré en éruption, projetant une colonne de cendres à 1.000 mètres au‑dessus du cratère, a rapporté l’agence de presse Antara, citant les données du poste d’observation.
#indonésie#volcan#éruption
🇮🇩 En Indonésie, le volcan Semeru est entré en éruption, projetant un panache de cendres s'élevant à 6,7 kilomètres au-dessus du niveau de la mer, a rapporté l'agence Antara, citant un poste d'observation local.
#indonésie#volcan#éruption
🇮🇩🌋 Une éruption du volcan Dukono s’est produite en Indonésie. Un panache de cendres s’est élevé à une hauteur de 11,1 kilomètres, ont indiqué les autorités du Centre de volcanologie du pays.
Deux personnes ont trouvé la mort, rapporte le journal Kompas en citant les services de secours. 20 touristes sont recherchés, précise Reuters.
#éruption#volcan#cendres
🇮🇩🌋 En Indonésie, le volcan Marapi a projeté des cendres jusqu’à une hauteur de 4,5 kilomètres lors de son éruption, a indiqué le Centre de volcanologie du pays.
#volcan#cendres#éruption
🇮🇩🌋 Une éruption du volcan Semeru s’est produite en Indonésie. Un panache de cendres s’est élevé à une hauteur de 5,7 km, a rapporté le portail Tempo.
#éruption#volcan#cendres
🇮🇩Une éruption du volcan Semeru a été enregistrée dans la province de Java oriental, dans la partie centrale de l'Indonésie. Les cendres ont été projetées à 4,5 kilomètres au-dessus du niveau de la mer. C'est ce qu'indique un communiqué du Centre de volcanologie et de réduction des catastrophes géologiques (PVMBG) du pays.
#indonésie#semeru#volcan
🇺🇸🌋 Le volcan Kilauea dans l'archipel américain d'Hawaï est à nouveau entré en éruption, a annoncé samedi l'Institut d'études géologiques des États-Unis (USGS).
L'éruption a duré 8,5 heures. Des jets de lave ont atteint une hauteur de 220 mètres.
#hawaï#volcan#éruption
🇵🇭 Aux Philippines, des retombées de cendres volcaniques ont touché 32 localités, a rapporté la chaîne ABS-CBN News, citant l’Institut de volcanologie et de sismologie du pays.
#philippines#volcan#cendres
🇮🇩🌋 Au moins deux éruptions du volcan Dukono se sont produites sur l'île indonésienne de Halmahera (province des Moluques du Nord), rapporte le Centre de volcanologie et de réduction des catastrophes géologiques du pays.
Selon ses informations, une colonne de cendres s'est élevée à 1.300 mètres au-dessus du cratère du volcan et a atteint une hauteur d'environ 2.387 mètres d'altitude.
#éruptions#volcan#cendres