все Python 3osфункция
os.putenv
os — окружение
Устанавливает переменную окружения на уровне ОС (для дочерних процессов); os.environ обновляется отдельно.
Синтаксис
os.putenv(key, value)
Не обновляет os.environ: после putenv('X', '1') выражение 'X' in os.environ ложно. Поэтому почти всегда правильнее писать os.environ['X'] = '1' — это вызовет putenv само и сохранит согласованность. Изменение видят дочерние процессы, запущенные после вызова. На macOS и FreeBSD многократная установка переменных может приводить к утечкам памяти.
Примеры
import os
os.putenv('GLOSSARY_DEMO', '42') # → значение ушло в окружение ОС: его унаследуют дочерние процессы
print(os.environ.get('GLOSSARY_DEMO')) # → None (putenv не обновляет словарь os.environ)
os.environ['GLOSSARY_DEMO'] = '42' # → штатный способ: присваивание в os.environ само вызывает putenv
print(os.getenv('GLOSSARY_DEMO')) # → 42
os.putenv('GLOSSARY_DEMO', 42) # → TypeError: значение обязано быть str или bytes, а не int
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности