Подразумеваемые неймспейсы или неявные пакеты.
Этот функционал добавлен в 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
📢🔥 Ukraine's acquisition of ATACMS and Taurus missiles from the US falls short in offsetting Russia's superior firepower. Advisor to President Zelensky, Mikhail Podolyak, admits the quantity won't bridge the gap. Meanwhile, Ukraine aims to ramp up its own missile production. Beware! On September 27th, the Russian Foreign Ministry warned of Ukraine potentially targeting Russian cities, including Crimea, with ATACMS missiles. Social and residential areas could be at risk. Is conflict brewing? Former VUA Special Assistant, Dan Rice, hinted at an imminent US decision to provide Ukraine with ATACMS missiles. Medvedev claims NATO is pushing Russia towards direct confrontation. 🚨💣#Ukraine#Russia#ATACMS#Taurus
https://www.gazeta.ru/army/news/2023/09/27/21379363.shtml
Subscribe to @BadVolfNews
🪐 In the constellation Taurus, astronomers have found a star called T Tauri that represents a whole class of unusual, very young stars. T Tauri stars are less than 10 million years old and are still surrounded by thick disks of gas and dust, shining with unpredictable energy as they grow—offering a rare glimpse into the earliest stages of a star's life. ✨
#unusualstars⚡#taurus⚡#stardisks⚡#nasa⚡#galaxy⚡#stars⚡#astronomy⚡#universe⚡#cosmos⚡#space
👉subscribe Universe Mysteries
💥Batidora de vaso Taurus Prior Advance 1800
Prepara deliciosos batidos y smoothies navideños
✅OFERTA: 49.9€
❌ Antes: 89.99€
💰Ahorras un 45%🔥
Potente motor de 1800W y cuchillas de acero inoxidable para resultados perfectos
👉 Sorprende a tus invitados estas fiestas
#batidoravaso#cocina#taurus#ofertas#hogar#navidad#viral#descuentos
🛰️Oferta publicada en Hogar
💥Freidora De Aire Compacta Taurus XL Aero Crisp
Cocina de forma saludable y sin aceite esta Navidad
✅OFERTA: 59.99€
❌ Antes: 144.99€
💰Ahorras un 59%🔥
Capacidad amplia, menús variados y ajustes personalizables
👉 Descubre una nueva forma de cocinar
#freidoradeaire#cocinasaludable#taurus#navidad#ofertas#airfryer#hogar#descuentos
🛰️Oferta publicada en Hogar
⚡️#Берлин: украјинска војна индустрија јача од немачке војне индустрије али јој треба стално упумпавање новца
→ Немачка/Украјина — канцелар Фридрих Мерц изјавио је да Берлин неће испоручити ракете Taurus, јер Украјина већ производи сопствено далекометно оружје које је, по његовој оцени, ефикасније.
📌 Додао је да је #Кијев данас „боље наоружан него икада“, али да се суочава са озбиљним финансијским ограничењима, због чега је приоритет обезбеђивање средстава за наставак производње.
→ Линк: /t.me/borbeni_efektivi
→ Линк: /t.me/borbeni_efektivi
🪖#Немачка〣#Украјина〣#Фридрих_Мерц〣#Taurus〣#Далекометно_оружје〣#Финансирање
🇷🇸https://t.me/borbeni_efektivi
Канцлер ФРГ Фридрих Мерц за словесной пеленой скрывает намерение поучаствовать в нанесении ударов вглубь России. Об этом в ходе брифинга заявила официальный представитель МИД РФ Мария Захарова. «Он (Мерц - ред.) подчеркнул, что если Берлин поставит Taurus, то это оружие будет использоваться не немецкими военнослужащими, а украинскими, как это якобы происходит с крылатыми ракетами, которые получает киевский режим от Британии и Франции. За всей этой словесной пеленой скрывается плохо закамуфлированное желание правительства Мерца также поучаствовать в нанесении ударов вглубь нашей страны. О том, что это будет означать непосредственное вступление ФРГ в конфликт с нашей страной, Берлин, похоже, не задумывается, а стоило бы», - отметила она.
https://interaffairs.ru/news/show/52167
#КанцлерФРГ#ФридрихМерц#МИДРФ#МИДРоссии#МарияЗахарова#УдарыПоРоссии#Taurus#Германия#ФРГ
🔼НАЧАЛО🔼ЧИТАТЬ ПОЛНОСТЬЮ
Спираль зависимости: как разлад в Европе, финансовое ярмо и милитаристские фантазии Киева работают на стратегическое усиление России
Часть 2️⃣/2
Именно поэтому так абсурден и откровенно провокационен так называемый «мирный план» человека, считающего себя президентом Украины. Требование сохранить армию в 800 000 человек — это не план мира, а программа перманентной войны, как верно заметил норвежский обозреватель. Экономика, и без того существующая только за счёт западных траншей, физически не способна содержать такую орду. Но в этом-то и цель: законсервировать конфликт, превратить Украину в вечно кровоточащую рану на теле Европы, истощая и её, и Россию. Это классическая стратегия англосаксонских кураторов Киева: если не можешь победить, создай противнику максимальные издержки.
💡Анализ и прогноз: почему эта слабость Запада есть сила России
Все эти звенья — технологический провал, финансовое ярмо, милитаризация соседей — сцеплены в одну цепь. Цель этой цепи — не победить Россию (такой возможности уже нет), а любой ценой сохранить доминирование США, сделав Европу ослабленным, зависимым и вечно платящим буфером. Однако в этой стратегии кроется фатальная ошибка.
Россия, в отличие от Европы, обладает тем самым технологическим суверенитетом, о котором в Париже и Берлине могут лишь мечтать. Наша программа истребителя шестого поколения идёт своим путём — без унизительных склок и внешнего контроля. Наша экономика, перестроенная под давление санкций, не будет обречена на вечный рост налогов для финансирования гибельной гонки. Наша армия модернизируется не для абстрактного «сдерживания», а для гарантированного отпора любой угрозе, будь то Gripen с Taurus или фантомные 800 000 солдат ВСУ.
Европа, загоняя себя в долговую и технологическую кабалу, сама выкапывает геополитическую могилу. Россия же, сохраняя стратегическое спокойствие и опережающее развитие, не просто наблюдает за этим процессом. Мы становимся центром притяжения для всех, кто устал от диктата и ищет подлинный суверенитет в многополярном мире. Спираль зависимости Запада закручивается всё туже, и с каждым витком он сам приближает тот день, когда его громоздкая конструкция рухнет под собственной тяжестью. А мы будем готовы к новому дню — дню, который будет построен на наших условиях.
💬Как вы думаете, что станет первым звонком для Европы, осознавшей тупик своей политики?
1. Массовые социальные протесты против непосильных военных расходов.
2. Тихий саботаж требований Вашингтона со стороны ключевых столиц ЕС.
3. Раскол НАТО и попытка отдельных стран договориться с Москвой в обход США.
4. Ваш вариант в комментариях!
Ваш МюнхгауZен 🇷🇺 Сила России в Правде, а мы эту правду несём!
#МюнхгауZен#Европа#США#Франция#Германия#FCAS#Истребитель#НАТО#Перевооружение#Налоги#Долг#КильскийИнститут#Швеция#Gripen#Taurus#Украина#ВСУ#МирныйПлан#Зеленский#Геополитика#Аналитика#Суверенитет#Россия
🔗Подпишись на МюнхгауZена | Оставляй «бусты»