Как работает функция 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
Have you heard of El Niño? Even though Singapore is thousands of kilometres away from the Pacific Ocean, we are not immune to this global climate event that causes fluctuations in our weather patterns, leading to less rainfall and hotter temperatures.
El Niño conditions have developed and are predicted to strengthen over the next few months and persist at least until the end of 2023.
Let’s be prepared and adapt to these changes together, learn more at go.gov.sg/el-nino#SGWeather#ElNino
🌍 The El Niño and La Niña cycles shift ocean temperatures across the Pacific, affecting weather patterns around the globe, from droughts in Australia to floods in South America. ✨
#ElNino⚡#LaNina⚡#climate⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography 🌍
🚢Учёные предупреждают о супер-Эль-Ниньо: балкеры ждёт новая волатильность.
Климатологи предупреждают о возможном формировании очень сильного явления Эль-Ниньо, которое может стать одним из самых интенсивных за всю историю наблюдений.
Такое развитие событий способно вызвать экстремальные погодные явления по всему миру — засухи, наводнения и периоды сильной жары.
Для рынка сухогрузных перевозок это означает дополнительную нестабильность в товарных потоках.
Особенно чувствительными могут оказаться типоразмеры балкеров Handysize, Supramax и Panamax, которые активно используются для перевозки сельскохозяйственных грузов, включая зерно и агропродукцию.
Изменения климатических условий способны существенно повлиять на урожайность и географию экспорта, что, в свою очередь, меняет маршруты перевозок и усиливает тонно-мильный фактор.
В результате погодные колебания всё чаще становятся важным драйвером фрахтовых ставок наряду с геополитикой и макроэкономикой.
Аналитики отмечают, что сухогрузный рынок уже сталкивается с ростом погодных рисков, которые могут усиливать цикличность спроса на перевозки сырья и продовольствия.
📌NOAA (National Oceanic and Atmospheric Administration) — американское государственное агентство, основанное в 1970 году, занимается мониторингом океанов, атмосферы и климатических процессов, включая исследования явления Эль-Ниньо. Организация финансируется федеральным бюджетом США.
#DryBulk#ElNino#CommodityMarkets#ShippingRisk#ClimateImpact
#ElNino#SuperElNino#ClimateChange#WeatherAnomalies#GlobalWarming#climate#destruction#anomaly#climatecrisis#weather
🌍 Изменение климата делает супер-Эль-Ниньо 2026–2027 годов иным: планета теперь теплее
🌡️ Климатологи предупреждают, что предстоящее событие супер-Эль-Ниньо 2026–2027 годов будет значительно отличаться от предыдущих мощных эпизодов в 2015–2016 годах, 1997–1998 годах и 1982–1983 годах.
🌊 Основная причина — глобальное потепление. Фоновые температуры поверхности моря в тропической части Тихого океана теперь заметно выше, чем они были несколько десятилетий назад. Это усиливает конвекцию и грозовую активность над океаном.
⚡ Грозовая активность в Тихом океане во многом определяет, как Эль-Ниньо влияет на глобальные погодные условия — включая распределение осадков, засухи, наводнения, ураганы и волны тепла по всему миру.
🔥 Ситуация показывает, как климатический кризис меняет даже хорошо известные природные явления, делая их более интенсивными и непредсказуемыми.
📎 Источник:
Бен Нолл (NOAA) и климатические модели ECMWF