Наверняка вы замечали, что в 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
A further escalation in the Iran war could trigger a global recession that would affect the UK more than any of the other G7 nations, the International Monetary Fund has warned.
Against an increasingly volatile backdrop, the Washington-based fund said the economic damage from the Middle East conflict was steadily rising as it cut its growth forecasts for 2026 based on the impact of the war so far.
#IMF#War
👂More on Trump's Ear ⚠️
El Salvador Buys More Bitcoin
El Salvador continues to accumulate Bitcoin despite an agreement with the IMF to reduce Bitcoin initiatives. The government now purchases 1 BTC daily, having bought 11 BTC today. As part of a $1.4 billion loan agreement with the IMF, the government will make Bitcoin adoption voluntary for the private sector, limiting government involvement.
#ElSalvador#Bitcoin#IMF#Crypto#Funding
El Salvador Revises Bitcoin Strategy with IMF
El Salvador amends Bitcoin law for IMF compliance, allowing voluntary crypto usage in private sector. In exchange for a $1.4B loan, Bitcoin adoption will be voluntary for private entities, limiting government participation. Read more here: forklog#ElSalvador#Bitcoin#IMF#Crypto#Finance
#ElSalvador#Bitcoin#IMF#Crypto#Finance
वैश्विक स्तर पर चमकती भारतीय अर्थव्यवस्था।।
सबसे तेजी से बढ़ती प्रमुख अर्थव्यवस्था के रूप में, भारत लगातार आगे बढ़ रहा है।
आईएमएफ ने विकास अनुमान को 6.1% से बढ़ाकर प्रभावशाली 6.3% कर दिया है।
#IMF#IndianEconomy#NewIndia
🎥 VIDEO | Venezuela and the IMF: Short-Term Relief or Long-Term Pain?
Venezuela has reestablished ties with the International Monetary Fund. But what comes next?
After years of isolation, Caracas could gain access to roughly $5 billion in Special Drawing Rights, funds it hopes to use to stabilize essential services like electricity and water.
In the short term, the move offers relief.
In the long term, it raises deeper questions.
Venezuela’s external debt is estimated at up to $170 billion, and any broader financial engagement could reopen the door to negotiations with creditors and potential IMF-backed programs. For a country with a long and contentious history with the Fund, the stakes are high: access to liquidity versus the risk of increased financial dependence.
Is this a step toward recovery or the beginning of a new cycle of debt?
#IMF#CentralBankofVenezuela#USVenezuelaRelations
News: #IMF approves $261 million disbursement to #Ethiopia, cites stronger macroeconomic performance
The International Monetary Fund (IMF) has approved the immediate release of US$261 million to Ethiopia under its Extended Credit Facility (#ECF), following the completion of the fourth review of the country’s reform program. The decision, the Fund said, reflects “stronger-than-anticipated macroeconomic outcomes and overall performance broadly in line with program commitments.”
In a statement issued on 16 January 2026, the IMF said the Executive Board’s decision under the 48-month ECF arrangement will support Ethiopia’s balance of payments and fiscal financing needs. The disbursement brings total funding released under the program to approximately US$2.183 billion (SDR 1.6 billion).
To strengthen the foreign exchange market, the IMF introduced a new performance criterion setting a zero limit on foreign exchange intervention outside of auctions.
Read more: https://addisstandard.com/?p=54630
👆आईएमएफ के अनुसार, भारत प्रमुख क्षेत्रों में सुधार द्वारा उत्कृष्ट है:
•निरंतर बैंक ऋण वृद्धि
•एनपीए में गिरावट
•उन्नत श्रम बाज़ार
•कार्यबल में महिलाओं की बढ़ती भागीदारी
•स्वास्थ्य, शिक्षा, भूमि और कृषि सुधारों में प्रगति
#IMF#IndiaEconomy
#EconomicGrowth
👆2023 में भारत की G20 की अध्यक्षता ने वैश्विक स्तर पर बहुपक्षीय नीति की प्राथमिकताओं को आगे बढ़ाने में देश की महत्वपूर्ण भूमिका को प्रदर्शित किया है। हम 2023 में G20 की अध्यक्षता के दौरान भारत के सशक्त नेतृत्व की सराहना करते हैं- आईएमएफ
#IMF#IndiaEconomy
#EconomicGrowth
👆भारतीय अधिकारियों की उनकी व्यापक आर्थिक नीतियों और सुधारों के लिए सराहना की जानी चाहिए, क्योंकि वैश्विक स्तर पर लगातार आर्थिक प्रतिकूलताओं के बावजूद भी अर्थव्यवस्था को मजबूती, और वित्तीय स्थिरता मिली- आईएमएफ
#IMF#IndiaEconomy
#EconomicGrowth