> For the complete documentation index, see [llms.txt](https://treasuremaster.gitbook.io/python-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://treasuremaster.gitbook.io/python-docs/moduli-standartnoi-biblioteki-1/obshie-sluzhby-operacionnoi-sistemy/os/parametry-processa/environ.md).

# os.environ

#### os.environ

Объект сопоставления, представляющий строковое окружение. Например, `environment['HOME']` - это путь к вашему домашнему каталогу (на некоторых платформах) и эквивалентен `getenv("HOME")` в C.

Это сопоставление фиксируется при первом импорте модуля [os](https://treasuremaster.gitbook.io/python-docs/obshie-sluzhby-operacionnoi-sistemy/os), обычно во время запуска Python в рамках обработки `site.py`. Изменения среды, внесенные после этого времени, не отражаются в `os.environ`, за исключением изменений, внесенных путем непосредственного изменения `os.environ`.

Если платформа поддерживает функцию [putenv ()](/python-docs/moduli-standartnoi-biblioteki-1/obshie-sluzhby-operacionnoi-sistemy/os/parametry-processa/os.putenv.md), это сопоставление можно использовать для изменения среды, а также для запроса среды. [putenv ()](/python-docs/moduli-standartnoi-biblioteki-1/obshie-sluzhby-operacionnoi-sistemy/os/parametry-processa/os.putenv.md) будет вызываться автоматически при изменении сопоставления.

В Unix ключи и значения используют [sys.getfilesystemencoding ()](/python-docs/moduli-standartnoi-biblioteki-1/sluzhby-sredy-vypolneniya-python/sys/sys.getfilesystemencoding.md) и обработчик ошибок `'surrogateescape'`. Используйте environb, если хотите использовать другую кодировку.

{% hint style="info" %}
Прямой вызов [putenv ()](/python-docs/moduli-standartnoi-biblioteki-1/obshie-sluzhby-operacionnoi-sistemy/os/parametry-processa/os.putenv.md) не меняет ***os.environ***, поэтому лучше изменить ***os.environ***.
{% endhint %}

{% hint style="info" %}
На некоторых платформах, включая FreeBSD и Mac OS X, настройка среды может вызвать утечку памяти. Обратитесь к системной документации для putenv ().
{% endhint %}

Если [putenv ()](/python-docs/moduli-standartnoi-biblioteki-1/obshie-sluzhby-operacionnoi-sistemy/os/parametry-processa/os.putenv.md) не предоставляется, измененная копия этого сопоставления может быть передана в соответствующие функции создания процесса, чтобы дочерние процессы использовали измененную среду.

Если платформа поддерживает функцию [unsetenv ()](/python-docs/moduli-standartnoi-biblioteki-1/obshie-sluzhby-operacionnoi-sistemy/os/parametry-processa/os.unsetenv.md), вы можете удалить элементы в этом сопоставлении, чтобы сбросить переменные среды. [unsetenv ()](/python-docs/moduli-standartnoi-biblioteki-1/obshie-sluzhby-operacionnoi-sistemy/os/parametry-processa/os.unsetenv.md) будет вызываться автоматически при удалении элемента из **os.environ** и при вызове одного из методов `pop ()` или `clear ()`.
