Как работает функция 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
🇷🇺#ALRS
"Алроса" изучает золотоносные потенциальные объекты в Магаданской и Иркутской областях, Хабаровском крае и Чукотском автономном округе как для самостоятельной разработки, так и совместно с партнерами, рассказал в интервью РИА Новости главный геолог "Алросы" Роман Желонкин
mt в max
Алмазно-бриллиантовый рынок третий год остается в состоянии спада, несмотря на первые признаки оживления в сегменте крупных и редких камней — Forbes #ALRS
Главная проблема — падение спроса на массовый сегмент, прежде всего на камни весом до двух карат.
Дополнительное давление оказывает ситуация в Индии, где сосредоточено около 90% мировых гранильных мощностей.
Еще один фактор — конкуренция со стороны искусственных алмазов.
Читать далее
👉https://smartlab.news/i/184522
мы в max
АЛРОСА увеличила цены на 6–9% на значительную часть своей продукции из-за дефицита крупных камней и логистических сложностей, вызванных ситуацией на Ближнем Востоке — Ъ #ALRS
Читать далее
👉https://smartlab.news/i/183482
мы в max
Мы сейчас видим первые признаки разворота на рынке необработанных алмазов — президент Всемирной федерации алмазных бирж (WFDB) Йорам Дваш #ALRS
"После недавней коррекции цен спрос начал укрепляться, и в некоторых сегментах снова наблюдается премия"
Президент WFDB указывает на то, что алмазная индустрия переживает один из самых тяжелых периодов за последние десятилетия.
Читать далее
👉https://smartlab.news/i/182770
мы в max
Искусственный бриллиант в 1 карат в опте можно купить за $70 — Сергей Тахиев, глава корпоративных финансов АЛРОСА на инвестиционном форуме ВТБ «РОССИЯ ЗОВЕТ! Санкт-Петербург»
Низкие цены на алмазы - следствие избыточных запасов, которые сложились в мире
Читать далее
👉https://smartlab.news/i/179399
#ALRS
Спрос на алмазы припал, но алмазы - не бананы, они не портятся — Сергей Тахиев, глава корпоративных финансов АЛРОСА на инвестиционном форуме ВТБ "РОССИЯ ЗОВЕТ! Санкт-Петербург"
Это миф, что молодежь не покупает люксовые товары, с ювелиркой бриллиантовой тоже все нормально
Читать далее
👉https://smartlab.news/i/179393
#ALRS
Рынок алмазной продукции сегодня сильно меняется за счет молодых потребителей, которые вместо натуральных камней предпочитают дешевые синтетические алмазы — РБК
Читать далее
👉https://smartlab.news/i/176666
#ALRS
Алроса нашла "елочную игрушку" и "щенка" под Архангельском
Прямо под Новый год алмазодобытчики обогатительной фабрики «Севералмаза» (входит в состав АЛРОСА) извлекли сразу два алмаза необычной формы – настоящие драгоценные ёлочные игрушки.
Первый алмаз весом чуть больше 17 карат формой напоминает елочный шар, а второй кристалл весом 2,7 карата – милого щенка.
Читать далее
👉https://smartlab.news/i/174426
#ALRS