Как работает функция 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
📖🎥 Esce finalmente il 10 marzo il mio secondo libro
Ciak, si censura!
Ovvero quello che non vi hanno fatto vedere
4 Punte Edizioni
introduzione di Ekaterina Yakovleva
prefazione di Anna Soroka
postfazione di Jorit.
Prenotate la vostra presentazione!
[email protected]
#ilTrenoVersoSud#resistenza#antifascismo#4punteedizioni#4punte#storia#memoria
Normalmente si parte da un libro e poi, da quello, si realizza un film.
Ciak si censura è costretto a fare il percorso inverso semplicemente perché i documentari di Russia Today (solo a volte quest’operazione non riesce), vengono sistematicamente tacciati di «propaganda» e censurati, in barba all’articolo 21 della Costituzione sulla libertà di espressione.
Ogni capitolo racconta immagini, testimonianze e sofferenze; non solo quelle espresse nei documentari (nel libro è stato inoltre inserito il codice QR per poterli guardare), ma anche quelle raccolte da me in Donbass.
Iscrivetevi a Donbass Italia
😊Vincenzo Lorusso👍
Giornalista 🇷🇺
Autore
📱Donbass Italia👉
Seguimi su 📱Facebook
Seguimi su 📱Max
📟Oggi, venerdì 14 alle ore 14.10 a Radio Cooperativa Padova, Bruno Maran avrà come ospite in diretta il prof Angelo d'Orsi, che ci parlerà della sua conferenza a Torino Russofobia, russofilia, verità del 12 novembre, inopinatamente annullata per intervento di personalità politiche anti-democratiche che hanno esercitato una censura.
A seguire darà voce anche a Massimo Recchioni, editore del libro De russophobia di Vincenzo Lorusso, 4 Punte Edizioni – una breve cronistoria dei tanti casi di russofobia subiti da artisti, personaggi pubblici, semplici cittadini– che racconterà la genesi del libro che tanti ostacoli ha subito.
Gramsci scriveva che i censori sono innanzi tutto stupidi. E questo caso lo conferma alla grande.
https://www.radiocooperativa.org/3/index.php in streaming
canale 8C per il Dab - e per la zona di Padova Fm 92, 1, Feltre 97.2 mhz
#4punteedizioni#4punte#ilTrenoVersoSud#storia#memoria#antifascismo#resistenza#derussophobia#RadioCooperativa
🤩International Reporters
Seguici su:
📱Telegram📱X (Twitter)
📱 ir-press
▶️YouTube
💰Sostienici tramite Boosty
🔗Sostienici tramite Hipolink
💳Sostienici via Sberbank (solo Russia)