Как работает функция 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
@RusEmbMalta
A series of press releases dedicated to 80th anniversary of the Victory in the Great Patriotic War
🗓️80 Years Since the Historic Meeting on the Elbe
On April 25, 1945, just fifteen days before Nazi Germany’s surrender, Soviet and American troops met on the Elbe River, sealing one of the most symbolic moments of World War II. Soldiers of the Red Army’s 1st Ukrainian Front under Marshal Ivan Konev joined forces with the US 1st Army’s 69th and 104th Infantry Divisions led by General Omar Bradley.
This powerful encounter marked the imminent end of the war in Europe and gave birth to what would become known as the Spirit of the Elbe – a legacy of unity, courage, and hope for a peaceful future.
🕊️ On the 75th anniversary in 2020, Presidents Vladimir Putin and Donald Trump paid tribute in a joint statement:
“The Spirit of the Elbe is an example of how our countries can put aside differences, build trust, and cooperate in pursuit of a greater cause... Their heroic feat will never be forgotten.”
That day in 1945, language and cultural barriers faded as soldiers embraced, exchanged keepsakes, and celebrated together. A photo of Alexander Sylvashko and William Robertson became an icon of unity. Sylvashko would later reflect, “If that spirit had endured, the world might have been a better place.”
🕯️ Even through the Cold War, the veterans of the Elbe kept this spirit alive – a reminder of what’s possible when nations stand together against evil. In 1963, American veteran Joe Polowsky wrote to Marshal Konev:
“The promise made on April 25, 1945, must be upheld.”
📌 On this 80th anniversary, we honor the memory of that handshake on the Elbe – a symbol of allied brotherhood, a shared sacrifice, and a lasting hope for peace.
#Elbe80#SpiritOfTheElbe#WWII#Victory80#SharedHistory#RedArmy#NeverForget
📢Товарищи, отличные новости!
Только что получил короткий репортаж от наших итальянских коммунистов о проведении акции "Бессмертный полк" в Италии! 🇮🇹
🤝Наши братья по идеологии практически во всём мире проявляют солидарность с Россией в борьбе против западного империализма
❌
Коммунисты всего мира помнят и чтят подвиг советских солдат и всего советского народа в годы Второй Мировой войны✊
🫂После II Международного антифашистского форума в Москве у меня и у Левого Фронта появилось множество близких товарищей по всему миру
🌍
😊Уверен, мы будем поддерживать друг друга в любых обстоятельствах!
🛫Кстати, скоро Левый Фронт планирует ряд поездок за рубеж для участия в международных мероприятиях‼️
Хотите с нами?😉
Еще не в Левом Фронте❓
👇Тогда пишите и вступайте
[email protected]
Подробности от наших итальянских товарищей:
"Мероприятие состоялось сегодня и было организовано членами организации Reggimento Immortale Roma на площади Уго Ла Мальфа, под памятником, посвященным Джузеппе Мадзини. Прозвучали различные речи, песни и стихи. Естественно, особая дань уважения была отдана товарищам, сражавшимся в Красной Армии и Итальянском сопротивлении. Коммунистическая партия была рада принять участие в праздновании."
(Фабрицио, Reggimento Immortale Roma)
https://t.me/ilpartitocomunista_ufficiale/518
#БессмертныйПолк#ДеньПобеды#9Мая#Коммунисты#Солидарность#ЛевыйФронт#Антифашизм#Италия#Россия#ВместеМыСила#RedArmy#PartitoComunista
📢Товарищи, отличные новости!
Только что получил короткий репортаж от наших итальянских коммунистов о проведении акции "Бессмертный полк" в Италии! 🇮🇹
🤝Наши братья по идеологии практически во всём мире проявляют солидарность с Россией в борьбе против западного империализма
❌
Коммунисты всего мира помнят и чтят подвиг советских солдат и всего советского народа в годы Второй Мировой войны✊
🫂После II Международного антифашистского форума в Москве у меня и у Левого Фронта появилось множество близких товарищей по всему миру
🌍
😊Уверен, мы будем поддерживать друг друга в любых обстоятельствах!
🛫Кстати, скоро Левый Фронт планирует ряд поездок за рубеж для участия в международных мероприятиях‼️
Хотите с нами?😉
Еще не в Левом Фронте❓
👇Тогда пишите и вступайте
[email protected]
Подробности от наших итальянских товарищей:
"Мероприятие состоялось сегодня и было организовано членами организации Reggimento Immortale Roma на площади Уго Ла Мальфа, под памятником, посвященным Джузеппе Мадзини. Прозвучали различные речи, песни и стихи. Естественно, особая дань уважения была отдана товарищам, сражавшимся в Красной Армии и Итальянском сопротивлении. Коммунистическая партия была рада принять участие в праздновании."
(Фабрицио, Reggimento Immortale Roma)
https://t.me/ilpartitocomunista_ufficiale/518
#БессмертныйПолк#ДеньПобеды#9Мая#Коммунисты#Солидарность#ЛевыйФронт#Антифашизм#Италия#Россия#ВместеМыСила#RedArmy#PartitoComunista