Как работает функция 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
🚀 Exciting updates for SingSing Club!
SingSing Mini App has introduced new updates aimed at enhancing the user experience:
1️⃣Utilizing SingSing Bot: Manage your club better with SingSing Bot on Telegram.
2️⃣Update Club Info: Add your Telegram group link in SingSing Club for seamless communication.
3️⃣Club Quick Access: You can access your Club quickly from SingSing Bot without open Mini App.
Learn more and maximize these features in our detailed guide
Read more and open treasure at: X Post
#SingSingClub#Community
🎉 The 2nd RUBY Halving is officially happening at 5:00 AM UTC, Sep 11! 🔥
Get ready to power up and mine more RUBY! 💎 This is your chance to dig deep and earn bigger rewards together! 🚀
#SingSingClub#RUBY#Halving#Blockchain
🎉 The RUBY Halving has officially occurred at 14:00 UTC! 🔥
Get ready to power up and mine even more precious RUBY! 💎 Don’t miss this opportunity to dig deep and earn big rewards together. 🚀
#SingSingClub#RUBY#Halving#Blockchain
🎉 800,000 Web3 users and counting! 🎉
We're beyond thrilled to see so many embracing the power of our SocialFi SDK.
This is just the beginning—let's keep building the future of decentralized social interactions together! 🚀
#SingSingClub#SocialFi#Web3Milestone
🌟 Exciting news! SingSing Mini App has launched Version 2! 🚀
Enjoy these amazing new feature:
🚨Claim RUBY: absolutely gas-free! 🎉 NO FEES, JUST RUBY!
⚠️ Remember, you only need to connect your wallet when minting tokens on-chain and you will soon be able to use RUBY in various games and projects within the SingSing ecosystem.
Also, a friendly reminder: Ruby token halving starts at 14:00 UTC. ⏰
Don't miss out on these upgrades and make the most of your SingSing experience!
#SingSingClub#RubyToken#CryptoUpdate
Don't forget to take care of your club and check your ranking daily!
💎 Your club will be a powerful tool in the exciting activities we have planned for SingSing.
Stay active and keep pushing for the top! 🚀🎉
#SingSingClub#RubyMining#CommunityPower
🚨 ANNOUNCEMENT 🚨
SingSing Quest & Mine Point programs are closing soon to make way for new and exciting reward programs! 🎉💎 Get ready for bigger and better prizes 🔥
⁉️⁉️Explanation
✅SingSing Quest is a program on SingSing's old Dapp, but currently, the Mission part of SingSing Tycoon Mini App is still live.
✅Mine Point on X is a program to interact with Post X to receive Points, now you can do Missions in Tycoon game, interact with X Post and earn $KARA
📌 Note: Points earned so far can still be redeemed as previously announced.
Stay tuned for updates and get ready to level up with our upcoming features! 🚀
#SingSingClub#BigRewards#GetReady
🎤Announcement | Chat | X (Twitter) | Website | Game
🎉 We're excited to announce our partnership with @SocialGrowAI! 🎉
Together, we'll empower our community with advanced AI-driven social growth tools. Get ready for new ways to connect, grow, and thrive in the SingSing ecosystem! 🚀
Stay tuned for more updates and innovations! 💡✨
#Partnership#SingSingClub#SocialGrowAI#AI#Web3
🌟 Exciting News! 🌟
We're thrilled to announce our partnership with @ARCreactorAI - world's best AI model, scoring #1 on the MMLU!
🤝 Together, we'll be taking your SingSing experience to the next level with cutting-edge AI innovations. Stay tuned for more amazing updates! 🚀✨
#SingSingClub#Partnership#ARCReactorAI#Innovation#NFT
🚨 LEAK ALERT 🚨
Big news, SingSingers!
🔥 $KARA is about to get new utilities that will change the game 🎮💎. Ready to unlock even more ways to use your $KARA? 👀
Stay tuned – details dropping soon! 🚀
#SingSingClub#KARA#BigUpdate#NewUtilities
🎤Announcement | Chat | X (Twitter) | Website | Game
🚨 SingSing Mini App Version 2 Update! 🚨
Here's what's new:
The RUBY in the "RUBY Balance" section is now off-chain RUBY, which you can claim completely gas-free! 🎉
1️⃣When you click the "Check Mission" button below the RUBY Balance Section, you'll see a "Mint" button. Hit "Mint" to convert your off-chain RUBY into on-chain RUBY. 🔄
2️⃣Scroll down to your Token List. The RUBY displayed here is your on-chain RUBY balance. After minting, your RUBY from the RUBY Balance section will move to this Token List balance. 💎
3️⃣With this new version, you can earn more RUBY with lower costs. Make the most of it and start stacking up RUBY for upcoming events with SingSing and our partners! 🚀
#SingSingClub#RUBYToken#CryptoUpdate#Version2