Подразумеваемые неймспейсы или неявные пакеты.
Этот функционал добавлен в 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
🎓 Ещё один крючок для стены
Ещё одна полезная деталь интерьера — функциональный крючок, который поможет организовать пространство стильно и удобно!
🔗Скачать:Printables
#️⃣ Категория:#Garage@anzar3d
🖨3D модели | Мы в Max | Заказать печать
🛠️ Полка для хранения сверл Ø1-Ø13 мм
Простое и компактное решение для удобного хранения мелких свёрл от 1 до 13 мм диаметром. Легко собрать самостоятельно на 3D-принтере!
🔗Скачать:Printables
#️⃣ Категория:#Garage@anzar3d
🖨3D модели | Мы в Max | Заказать печать
🚗 Ключница Cool Garage Car Key Holder
Эта стильная ключница станет классным дополнением интерьера гаража! Изготовлена специально для автолюбителей — практичная и эстетичная деталь хранения ключей от авто.
🔗Скачать:Printables
#️⃣ Категория:#Garage@anzar3d
🖨3D модели | Мы в Max | Заказать печать
🔌 Катушка для проводов Power Cord Winder & Organiser
Простое решение для хранения кабелей и шнуров, удобное хранение и защита от спутывания.
🔗Скачать:Printables
#️⃣ Категория:#Garage@anzar3d
🖨3D модели | Мы в Max | Заказать печать
📌 Крепление аккумулятора Ryobi 18V для стены DDD Control
Это удобное крепление позволяет надежно зафиксировать аккумулятор Ryobi формата 18 вольт прямо на стене, обеспечивая быстрый доступ и удобную зарядку. Отличное решение для мастерской!
🔗Скачать:Printables
#️⃣ Категория:#Garage@anzar3d
🖨3D модели | Мы в Max | Заказать печать
📦 Открывалка коробок
Небольшое устройство упрощающее распаковку картонных упаковок. Компактная конструкция помогает аккуратно вскрывать коробки и упаковку, экономит время и нервы!
🔗Скачать:Printables
#️⃣ Категория:#Garage@anzar3d
🖨3D модели | Мы в Max | Заказать печать
🔧 Инструмент для снятия предохранителей автомобиля
Избавьтесь от неудобства! Удобный инструмент позволяет быстро и аккуратно извлекать автомобильные предохранители. Незаменим для автовладельцев!
🔗Скачать:Printables
#️⃣ Категория:#Garage@anzar3d
🖨3D модели для печати | 3D Маркетплейс | Max
📦 Складис — органайзер для инструментов и мелочей
Универсальное решение для хранения мелких предметов и инструмента. Компактный дизайн позволяет удобно разместить любые мелочи прямо рядом с рабочим местом. Сделан для организации пространства мастерской или гаража.
🔗Скачать:Printables
#️⃣Категория:#Garage@anzar3d
🖨3D модели для печати | 3D Маркетплейс | Max
Teenage Death Star — The Early Year's 88-91 Backyard Tapes (La Munai Records, 2020)
#garage#indie#psychedelic#post_punk#indorock#Indonesia
Сборник песен индонезийской инди-группы Teenage Death Star, который они выпустили в этом году как свой второй альбом. Домашний продакшен эпохи восьмидесятых и песни на инденезийском языке с названиями в духе «Не стригись и, пожалуйста, брось работу», «Неврологические расстройства научной фантастики», «Квантовая динамическая черная магия».
Bandcamp
SELECTAH BASS PARTY [THIS FRIDAY]
Плотные вибрации басов возвращаются в наш славный город, которые уже так полюбились многим бэйсерам! В этот вечер все серьезно - 4 килловата глубокого звука, селекторы старой и новой школы и исключительное разнообразие фирменного басистого звучания! 😎
Всё в один вечер, на первом этаже бара Сфера.
Приглашаются все неравнодушные почитатели английского и международного бэйса, чтобы встретиться и вместе качнуть в такт мощного саунда 🔊
Будут такие диджи как:
44G
CREEP N00M
NAJI
KNOWKHAN
UNOFFICIAL JAH
Конкретика по стилям:
#BASS#JUNGLE#DNB#GARAGE#DUBSTEP#DUB
ИТАК:
🔻26 Сентября, Пятница, 22:00
🔻Сфера Бар, Шакирова 31
🔻+21
🔻300 KGS с репостом в инст
*500 KGS если без
_
#dj#тусовка
@BishDvizh