Наверняка вы замечали, что в 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
Indices Nasdaq US30 Signals Live News Today – 6th April 2026 https://www.fxpremiere.com/indices-nasdaq-us30-signals-live-news-today-6th-april-2026/#us30signals Make Money Online - FxPremiere Group
Live Indices News Today – US30, NASDAQ, NAS100 & GER40 | March 24, 2026 https://www.fxpremiere.com/live-indices-news-today-us30-nasdaq-nas100-ger40-march-24-2026/#US30#us30signals
Live Indices News Today – US30, NAS100, NASDAQ & GER40 | March 16, 2026 https://www.fxpremiere.com/live-indices-news-today-us30-nas100-nasdaq-ger40-march-16-2026/#US30#us30signals@followers
Live Crypto News Today — Digital Asset Market Update 28th Jan, 2026 https://www.fxpremiere.com/live-crypto-news-today-digital-asset-market-update-28th-jan-2026/#us30signals#NAS100 Make Money Online - FxPremiere Group
Live Crypto News Today — Digital Asset Market Update 28th Jan, 2026 https://www.fxpremiere.com/live-crypto-news-today-digital-asset-market-update-28th-jan-2026/#us30signals#NAS100 Make Money Online - FxPremiere Group
Indices Nasdaq US30 Signals Live News Today – 7th April 2026 https://www.fxpremiere.com/indices-nasdaq-us30-signals-live-news-today-7th-april-2026/#indices#us30signals
Signals Forecast for Indice News Signals Starting 28th April 2026: US30, NAS100, S&P 500, FOMC Day One, AI Earnings, Oil Risk and Live Trading Scenarios https://www.fxpremiere.com/signals-forecast-for-indice-news-signals-starting-28th-april-2026-us30-nas100-sp-500-fomc-day-one-ai-earnings-oil-risk-and-live-trading-scenarios/#US30#us30signals#NAS100
Signals Forecast for Indices News Starting 22nd April 2026: US30, NAS100, S&P 500 Outlook, U.S. Macro Risks, and Live Trading Scenarios https://www.fxpremiere.com/signals-forecast-for-indices-news-starting-22nd-april-2026-us30-nas100-sp-500-outlook-u-s-macro-risks-and-live-trading-scenarios/#indices#US30#us30signals
Indice Signals News Forecast for US30 NASDAQ NAS100 GER40 Starting 16th April 2026 https://www.fxpremiere.com/indice-signals-news-forecast-for-us30-nasdaq-nas100-ger40-starting-16th-april-2026/#indices#US30#us30signals#NAS100 Make Money Online - FxPremiere Group
Live Indices News — US30, NAS100, GER40 & Global Markets
February 13, 2026 https://www.fxpremiere.com/live-indices-news-us30-nas100-ger40-global-markets-february-13-2026/#indices#US30#us30signals#NAS100 FxPremiere Group Nasdaq Financial Times
Indices Forecast — Week Ahead (9–13 February 2026) https://www.fxpremiere.com/indices-forecast-week-ahead-9-13-february-2026/#indices#US30#us30signals#NAS100 Nasdaq
Live Indices Signals News Today – US30, Nasdaq & Global Markets | April 2, 2026 https://www.fxpremiere.com/live-indices-signals-news-today-us30-nasdaq-global-markets-april-2-2026/#US30#us30signals#NASDAQ