Наверняка вы замечали, что в Python есть удобная функция для получения переменной окружения
os.getenv(NAME)
И её "сестра" для создания или изменения переменных окружения
os.putenv(NAME, VALUE)
Но почему-то putenv() не работает как должно. Энвайромент не обновляется!
os.putenv('MYVAR', '1')
print(os.getenv('MYVAR'))
... и ничего 😴
Почему так?
На самом деле энвайромент обновляется, но это значение не добавляется в словарь os.environ.
Откройте исходник функции os.getenv(). Это просто шорткат для os.environ.get()
В то время как putenv() это built-in С-функция.
Словарь os.environ (или точней класс из MutableMapping) создаётся из энвайромента в момент инициализации. Функция putenv() самостоятельно его не изменяет.
В тоже время, когда вы создаёте или изменяете ключ в os.environ, автоматически вызывается putenv() в методе __setitem__().
То есть, технически putenv() всё делает верно, но в os.environ это не отражается. Можно проверить так:
>>> os.putenv('MYVAR', '123')
>>> os.system('python -c "import os;print(os.getenv(\'MYVAR\'))"')
123
Я объявил переменную в текущем процессе и вызвал дочерний процесс, который её унаследовал и получил в составе os.environ.
Аналогично при удалении переменной вызывается еще одна built-in функция unsetenv(), удаляющая переменную из системы.
Итого
▫️ Удобней всего явно обновлять переменные через os.environ
▫️ Есть способ неявно создать/удалить переменную через putenv/unsetenv, что не повлияет на os.environ но изменит энвайромент и передаст изменения сабпроцессам. Но так лучше не делать!
▫️os.environ это просто обертка для built-in функций putenv() и unsetenv().
#basic
Pudgy Penguins Coin Surges 12%
Pudgy Penguins' native token (PENGU) jumps 12% to $0.043, capitalizing at $2.73 billion. However, NFT sales are declining, with a 50% drop in transactions and volume over the past week, according to CryptoSlam.
#NFT#PudgyPenguins#Crypto
📈Solana возглавил рейтинг блокчейнов по DEX-торгам
🔸Solana стал лидером по объемам торгов на децентрализованных биржах (DEX), обойдя крупные блокчейны. SOL также занял первое место по количеству активных адресов.
🔸 На фоне роста активности сети, после запуска NFT-коллекции Pudgy Penguins, в Solana было обработано 66,9 млн транзакций, что является рекордом.
🔸 Solana уступает блокчейнам Ethereum, Base и Tron по объему переводов стейблкоинов, но все же продолжает оставаться ключевой платформой для мемкоинов и NFT.
🔸DeFi-проекты, базирующиеся на Solana, аккумулировали активы на $9,189 млрд, а объем стейблкоинов составил $4,795 млрд.
🔸Raydium и Orca остаются основными децентрализованными биржами на Solana с объемом торгов $2,521 млрд и $880,87 млн соответственно.
#Solana#DEX#NFT#PudgyPenguins#Raydium#Orca#DeFi
АкадемияGarantex|Garantex Announcements|ВКонтакте|YouTube
Sticker Market Insights
🚀 An overview of the Sticker Market with upcoming NFT potentials. Stickers are gaining traction with unique IDs for future NFT conversion. Key collections include:
- 🐔Flappy Bird: 5,555 editions; 733 sold.
- 🐈⬛Blum: 10,268 sold from multiple editions.
- 🐶DOGS: Some sold out with various editions.
- 🐵Bored Apes: Sold out quickly with high ETH value.
Key motivations for buying or holding:
- Flipping and potential NFT benefits in EARN.
- Increased arbitrage opportunities through expanded markets.
Check out the StickerStore for purchases and Stars!
#StickerMarket#NFT#FlappyBird#Blum#DOGS#BoredApes#PudgyPenguins#Notcoin#Onchain#EARN#Arbitrage#Stars#Telegram#Collectibles#DigitalArt#Crypto#MarketTrends#Community#Investment#Trading