Как работает функция 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
#Re#Timeline
模块:nep.timeline.re_telegram
简介:Re Telegram
版本:170-Akiyama
更新时间:2024/12/09 15:29:52
更新日志:
Now you can delete your messages normally without having to delete them multiple times
@lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot
📄Timeline, a place where you can see all the messages from all subscribed channels.
❤️Redesigned In version 11.10.0 on June 20, 2024.
🗓Was added in version 5.0 on August 19, 2016.
#features#message#timeline#feed
#graph_messenger#telegram
@GraphMessenger
@GraphMessengerTips
#go#archival#data_archiving#data_import#family_history#self_hosted#timeline
Timelinize helps you organize your personal data from different sources like photos, messages, and social media into a single timeline on your computer. This keeps your data private and under your control, unlike cloud services. You can import data from many places, view it on a map, and see conversations across different platforms. It's like having a personal journal that you can add to and keep forever, without relying on companies to store it for you. This way, you can keep your memories safe and easily look back at them whenever you want.
https://github.com/timelinize/timelinize
After this reset, you will begin the New Earth timeline with new belief systems will guide you. But that is in the future.
For today, create boundaries with both the past and the future so you can simply be in this here and now moment.
The past no longer defines you. The future is what you decide upon.
Yah bless 🌹 Love Carolyn
✨ Get your FREE Quantum Energy Balancing & Tune-up https://www.144godcode.com/freebie
#timeline#newearth#reset#rebirth#therealyou #144000 #144GODCODE#APTTMH