Подразумеваемые неймспейсы или неявные пакеты.
Этот функционал добавлен в 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
#Italia
Dichiarazione del Presidente della Regione Calabria e del Vicesegretario di #FI|EPP Roberto #Occhiuto:
"Congratulazioni e auguri di buon lavoro a Stefania Craxi, neo capogruppo di Forza Italia al Senato. Sono felice che la guida del nostro gruppo a Palazzo Madama sia affidata a una figura di grande spessore, con una storia importante, qualità e competenze. Un profilo riformista e liberale che saprà rappresentare al meglio le battaglie storiche del nostro partito. Un ringraziamento a Maurizio Gasparri per il lavoro serio e appassionato svolto in questi anni alla guida del gruppo. Sono certo che continuerà a offrire, con la sua esperienza e la sua costanza, un grande contributo alla nostra comunità politica".
@Osservatorioitaliano
#Calabria, Roberto #Occhiuto: “Ho deciso di dimettermi, ma ho deciso anche di ricandidarmi, di dire ai calabresi: siate voi a scrivere il futuro della Calabria, a dire se la Calabria si deve fermare o se questo lavoro deve proseguire. Tra qualche settimana, quindi, si andrà a votare, e saranno i calabresi a decidere, non altri.”
@UltimoraPolitics
Il vicepremier e ministro delle Infrastrutture, Matteo #Salvini ha invitato i governatori Roberto #Occhiuto e Renato #Schifani al dicastero di Porta Pia per discutere sul progetto del Ponte sullo Stretto tra Calabria e Sicilia
@UltimoraPolitics
#Italia
❗️In pole position per sostituire #Tajani (#FI|EPP) in caso di dimissioni, secondo rumors raccolti dal Giornale d'Italia, ci sarebbe Roberto #Occhiuto (FI), governatore della Calabria, considerato affidabile e vicino a Marina #Berlusconi, che nel frattempo sta preparando la discesa in campo prevista per ottobre 2026. Da non scartare anche Giorgio #Mulè (FI).
@Osservatorioitaliano
#Italia
❗️ Perde forza l'appello dei governatori a Draghi: dopo il no dei 3 governatori di #FdI|ECR, si sfilano anche i forzisti #Cirio, #Bardi, #Toma e #Occhiuto.
@UltimoraPolitics
#Italia🇮🇹
#Regionali
#Calabria
❗️Roberto #Occhiuto (#FI|PPE; supportato anche da #FdI|ECR, #LSP|PfE, #DC|Centro, #UdC|PPE, #NM|PPE, #ScN|Meridionalisti, #PA|Animalisti) è stato rieletto Presidente della Giunta regionale della Calabria.
@TuttoElezioni