Как работает функция reload()?
Эта функция нужна для того, чтобы перезагрузить изменившийся код из py-файла без рестарта интерпретатора.
Дело в том, что любой импортированный модуль при повторном импорте не будет перечитывать файл. Функция импорта вернёт уже загруженный в память объект модуля. Чтобы обновить код, нужно либо перезапустить всю программу, либо использовать функцию reload()
from importlib import reload
reload(my_module)
🔸 Функция reload() принимает в качестве аргумента только объект модуля или пакета. Она не может перезагрузить класс или функцию. Только весь файл целиком!
🔸 Перезагрузка пакета перезагрузит только его файл __init__.py, если он есть. Но не вложенные модули.
🔸Она не может перезагрузить ранее не импортированный модуль.
🔸При вызове функция reload() перечитывает и перекомпилирует код в файле, создавая новые объекты. После создания новых объектов перезаписывается ранее созданный неймспейс этого модуля.
Это значит, что если где-то этот модуль импортирован через import и обращение к атрибутам происходит через неймспейс (имя) модуля, то такие атрибуты обновятся.
Если какие-либо объекты из этого модуля импортированы через from то они будут ссылаться на старые объекты.
Напишем простой модуль
# mymodule.py
x = 1
Теперь импортируем модуль и отдельно переменную х из модуля
>>> import mymodule
>>> from mymodule import x
>>> print(mymodule.x)
1
>>> print(x)
1
Не перезапуская интерпретатор вносим изменения в модуль
# mymodule.py
x = 2
Делаем перезагрузку модуля и проверяем х ещё раз
>>> reload(mymodule)
>>> print(mymodule.x)
2
>>> print(x)
1
То же самое будет если присвоить любой объект переменной (даже словарь или список)
Повторный импорт обновляет значение
>>> from mymodule import x
>>> print(x)
2
🔸Созданные инстансы классов не обновятся после перезагрузки модуля. Их придётся пересоздать.
#tricks#basic
Завтрак утром, бар вечером? В Питере другие правила...
⠀
Наша студия реализовала уникальный проект для нового ресторана в центре Санкт-Петербурга.
⠀
Prosa Breakfast Bar – атмосферное место напротив Спаса на Крови, где вы можете окунуться в атмосферу викторианского стиля, созданного Андреем и КсениейКарельскими.
⠀
🪟 Разработанный нами логотип повторяет формы оконных рам и обрамления картин, подчеркивая детали интерьера.
⠀
В рамках проекта был создан уникальный паттерн, отсылающий к интерьерам европейской культуры, где зачастую можно увидеть живые деревья во дворах уютных ресторанов.
⠀
Все это органично отобразилось на всех носителях, таких как: меню, стаканы, стикеры или даже барная стойка.
⠀
Рекомендуем к посещению!
📍 Санкт-Петербург, наб. канала Грибоедова, 5
#lupo#lupodesign
Надо бы ребрендинг сделать. Но и сайт тогда придётся обновлять.
Ребята из Eleon справились с первой задачей, а мы помогли реализовать вторую.
Одностраничный сайт производителя со всем необходимым функционалом уже вышел в свет. Удобный и яркий – что ещё нужно для современного бренда?
На сайте можно ознакомиться со всей подробной информацией: список вкусов и их описание, позиционирование бренда, контакты и прочее.
+600к к продажам обеспечено!
#lupo#lupodesign
🎸 По настоящему роковой логотип.
Сотворили умопомрачительное лого для Трёхи, блогера в кальянной индустрии, который ведёт популярный YouTube-канал Rock Love Hookah.
Дима один из немногих тру поклонников данного жанра музыки, поэтому логотип напрямую отражает его любовь к этой культуре.
⠀
Буква «ё», в красном цвете, под видом всеми известного жеста идеально вписалась в нашу идею с использованием медиатора вокруг лого.
Логотип сразу же начал использоваться не только в онлайн жизни, но и в офлайн. Например, они изготовили крутой мерч совместно с компанией Tongs Wear.
⠀
#lupo#lupodesign
🧁 Приготовили действительно вкусное лого!
Разработали логотип для кондитерской в Казани La Retta
Нежный, сливочный, аппетитный логотип с сахарными палочками, чтобы вот совсем сладко было.
Логотип ужа вовсю используется в реальной жизни (если ты ещё не выпал из неё, как мы).
Визитки, наклейки, воздушные шарики, упаковка для замечательных тортов, и даже на выставку сделали крутую вывеску, которая светится, вау, короче.
Также, сделали несколько внутренних заданий для бренда, например, тематические открытки, приуроченные к священному месяцу Рамадан.
#lupo#lupodesign
Бог есть? Ну кто-то же создал этот логотип…
⠀
С божественными усилиями мы разработали логотип и фирменный стиль для российского производителя чаш с внушающим названием – Тор.
⠀
Исторический. Сильный. Божественный.
⠀
Логотип заключает в себе силу и крепость Мьёльнера, молота скандинавского бога Тора, в свою очередь напоминающего силуэт чаши.
⠀
Неповторимый, как каждый удар молнии, патерн заключает в себе всю мощь богов.
⠀
Мы считаем, что у каждого бренда должна быть такая же мощная история за спиной. Это определенно путь к успеху.
⠀
Чаши уже в продаже. Подробнее ознакомиться с условиями можно у них в Инстаграме.
⠀
#КрепкиеКакМолотТора
#lupo#lupodesign