Вторая по частоте future-функция, которую я использовал, это абсолютный импорт
from __future__ import absolute_import
Что она делает?
Изменения, которые вносит эта инъекция описаны в PEP328
Покажу простой пример.
Допустим, есть такой пакет:
/my_package
/__init__.py
/main.py
/string.py
Смотрим код в my_package/main.py
# main.py
import string
Простой пример готов) Вопрос в том, какой модуль импортируется в данном случае? Есть два варианта:
1. модуль в моём пакете my_package.string
2. стандартный модуль string
И вот тут вступает в дело приоритет импортов. В Python2 порядок следующий: помимо иных источников, раньше ищется модуль внутри текущего пакета, а потом в стандартных библиотеках. Таким образом мы импортнём my_package.string.
Но в Python3 это поведение изменилось. Если мы указываем просто имя пакета, то ищется именно такой модуль, игнорируя имена в текущем пакете. Если мы хотим импортнуть именно подмодуль из нашего пакета то, мы должны теперь явно это указывать.
from my_package import string
или относительный импорт, но с указанием пути относительно текущего модуля main
from . import string
Еще одной неоднозначностью меньше 😎
Подробней про импорты здесь:
https://docs.python.org/3/tutorial/modules.html
#2to3#pep#basic
🌪 SODA Жидкий хайлайтер #showyourself "North Wind"
Всем хайлайтерам хайлайтер! Блеск, напоминающий то ли далекие галактики, то ли зимнюю магию из “Холодного Сердца”❄️
За что любим больше всего: яркость сияния! 🌌 От нежного мерцания свечи до тысячи звезд — все зависит от того, сколько его нанесешь ✨
🌟 Идеальный подарок для той самой подружки, которая обожает быть звездой вечеринки!
#sodalab#sodalovesdisney
Второе окошко! 👀
SODA Палетка теней Into the Unknown #showyourself🧊
Абсолютная база для зимы: 15 глубоких, насыщенных оттенков с различными финишами — от серебристого шиммера до матового бургунди⚡️
☝️ За что любим больше всего: универсальность!
Хочешь легкий искрящийся макияж? Будет! Хочешь драмы в образе? Весь мир у твоих ног!
Идеальный подарок для тех, кто хочет холодную палетку с по-настоящему зимним настроением 😌
P.S. Если будешь пересматривать «Холодное сердце 2» – найдёшь все отсылки в названиях оттенков 👀❄️
#sodalab#sodalovesdisney
Открываем первое окошко! 👀
❄️ Глиттер гель для лица и тела #showyourself "Fifth Element"
Это не просто блестки, это крупный глиттер в форме снежинок и сердечек💕
Он может быть той самой “вишенкой на торте” твоего зимнего макияжа, а может стать главной звездой всего образа
💎
За что любим больше всего: сразу поднимает градус праздника в любом образе, а благодаря своей клейкой гелевой основе стойко держится весь день — приятно, когда твой любимый глиттер остается на лице (или ключицах!), а не размазывается через полчаса по всей одежде 👀
✨ Вдохновлен и назван в честь пятого духа в Холодном Сердце 2, Эльзы – моста между мирами людей и духов ✨
Идеальный подарок для тех, кто обожает зимнюю эстетику и ее атрибуты 🎁
#sodalab#sodalovesdisney
🌼 SODA Жидкая подводка для глаз с блестками #guyliner
Культовая классика! Актуальна всегда, потому что приносит с собой праздник и хорошее настроение🥳
За что любим больше всего: блестки, разнообразие цветов… но особенно за то, что она подойдет тем, кто не умеет делать стрелки 😼 Ровные линии не заставят себя ждать!
Идеальный подарок для тех, кто любит блеск вечеринки, но не хочет тратить на создание праздничного образа слишком много времени ⏰
#sodalab#sodalovesdisney