Python Glossary English

все 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Сообщить о неточности