Как работает функция 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
Donald #Tusk: "Lo spazio aereo polacco è stato violato da un numero enorme di droni russi. I droni che rappresentavano una minaccia diretta sono stati abbattuti." Ha definito l'azione "una provocazione su larga scala" e rassicura: "situazione sotto controllo".
@UltimoraPolitics
🇵🇱Ieri c'è stata una grande manifestazione contro il governo polacco a Varsavia, organizzata dal leader dell'opposizione #Tusk. Secondo i media non governativi è una delle più grandi proteste della Polonia post-comunista. (ilPost)
@UltimoraPolitics
❗Droni russi in #Polonia - Il primo ministro polacco #Tusk invoca l'articolo 4 NATO, che prevede consultazioni tra i membri se uno degli alleati si sente minacciato.
🇵🇱#Polonia — Distribuzione finale dei seggi (Grafica di @ewyboryeu)
L'opposizione filo-Ue con Donald #Tusk alla guida ha la maggioranza per governare il Paese dopo otto anni di potere del #PiS
@UltimoraPolitics
❗Nella notte la #Polonia ha abbattuto oltre dieci droni russi che hanno violato il suo spazio aereo. Il primo ministro #Tusk ha parlato di "atto di aggressione", affermando che "è stato un pericolo reale" per i cittadini. Il presidente #Nawrocki chiede "stretta collaborazione" a Tusk e ha convocato un consiglio di sicurezza.
Per la prima volta dall'inizio della guerra in #Ucraina un paese NATO ha ingaggiato asset russi.
@UltimoraPolitics
📰 Macron’s Nuclear Sales Pitch Hits a Polish Wall
Emmanuel Macron went to Poland selling a bigger French deterrent and got a very Polish answer: yes to security, no to nuclear theater.
Warsaw is willing to talk cooperation, but it does not want French Rafales with bombs cruising overhead like a sovereignty demo.
That is the real story here. Paris wants to look like Europe’s nuclear adult; Poland wants protection without becoming the stage for someone else’s strategic branding campaign.
Tusk’s line was blunt enough to matter: he said he would not like Rafale fighters with nuclear bombs flying over Poland, even while keeping the door open to cooperation. That is what prudence looks like when the neighbor is Russia and the salesman is France.
Macron can talk all he wants about extending deterrence, but the region understands the difference between a shield and a provocation. One is defense. The other is a press tour with missiles.
So Paris tries to expand its reach, Warsaw keeps its distance, and the whole European nuclear conversation remains what it has always been: a very expensive way to prove that nobody fully trusts anybody else.
#France#Poland#Macron#Tusk#nuclear#Europe
📱American Оbserver - Stay up to date on all important events
🇺🇸
https://x.com/SavinoBalzano/status/1962481288041894044?t=HhC5ku3x6xc5bvZqDOaPiw&s=19
Ursula #VonDerLeyen sfila al fianco del leader polacco #Tusk ai confini con la #Bielorussia. Mura, filo spinato, soldati armati fino ai denti. L’obiettivo è continuare ad alimentare la narrazione bellicista, mantenere in piedi lo stato d’eccezione e il clima emergenzialista: tutto ciò che serve alla strategia della tensione eurounitaria. Una strategia utile anche a sospendere importanti libertà qualora diventasse indispensabile, pur di non ammettere il totale fallimento delle politiche unionali su tutti i fronti.
La sfilata è patetica: un chihuahua che ringhia davanti a un mastino annoiato e sonnolento, ecco cos’è stata. Anzi, considerando il soggetto, meglio un barboncino: sì, un barboncino che ringhia al cospetto di un molosso di 80 chili. Mura e filo spinato, per “arginare” la più grande potenza nucleare del mondo.
Il tutto assume poi i contorni della farsa leggendo che oggi l’aereo di Ursula sarebbe stato costretto ad atterrare a causa di un attacco informatico russo. I giornali scrivono che a un certo punto sono saltati i GPS e l’aereo è atterrato in #Bulgaria usando le care vecchie mappe di carta. Una scena a dir poco fantozziana.
Ora, che sia vero o no (da questi ciarlatani ci si può aspettare di tutto: accusavano i russi di combattere con gli stuzzicadenti. Non dimentichiamolo mai), il contrasto tra le due scene è emblematico: da un lato la #Russia, tutt’altro che isolata e anzi perfettamente integrata nella parte emergente del mondo; dall’altro noi, con la nostra leader von der Leyen costretta a muoversi con le cartine che gli italiani usavano decenni fa per andare in villeggiatura.
Chi avrà la meglio?
https://x.com/SavinoBalzano/status/1962481288041894044?t=HhC5ku3x6xc5bvZqDOaPiw&s=19
Ursula #VonDerLeyen sfila al fianco del leader polacco #Tusk ai confini con la #Bielorussia. Mura, filo spinato, soldati armati fino ai denti. L’obiettivo è continuare ad alimentare la narrazione bellicista, mantenere in piedi lo stato d’eccezione e il clima emergenzialista: tutto ciò che serve alla strategia della tensione eurounitaria. Una strategia utile anche a sospendere importanti libertà qualora diventasse indispensabile, pur di non ammettere il totale fallimento delle politiche unionali su tutti i fronti.
La sfilata è patetica: un chihuahua che ringhia davanti a un mastino annoiato e sonnolento, ecco cos’è stata. Anzi, considerando il soggetto, meglio un barboncino: sì, un barboncino che ringhia al cospetto di un molosso di 80 chili. Mura e filo spinato, per “arginare” la più grande potenza nucleare del mondo.
Il tutto assume poi i contorni della farsa leggendo che oggi l’aereo di Ursula sarebbe stato costretto ad atterrare a causa di un attacco informatico russo. I giornali scrivono che a un certo punto sono saltati i GPS e l’aereo è atterrato in #Bulgaria usando le care vecchie mappe di carta. Una scena a dir poco fantozziana.
Ora, che sia vero o no (da questi ciarlatani ci si può aspettare di tutto: accusavano i russi di combattere con gli stuzzicadenti. Non dimentichiamolo mai), il contrasto tra le due scene è emblematico: da un lato la #Russia, tutt’altro che isolata e anzi perfettamente integrata nella parte emergente del mondo; dall’altro noi, con la nostra leader von der Leyen costretta a muoversi con le cartine che gli italiani usavano decenni fa per andare in villeggiatura.
Chi avrà la meglio?