Python Glossary English

все Python 3osфункция

os.getenv

os — окружение

Возвращает значение переменной окружения или default, если её нет.

Синтаксис

os.getenv(key, default=None)

Значение всегда строка, а умолчание возвращается как есть, без преобразования: для числа пишут int(os.getenv('PORT', '8000')), а не int(os.getenv('PORT', 8000)) — второй вариант смешивает типы. Пустая строка и отсутствующая переменная — разные случаи: заданная, но пустая переменная вернёт '', а не default. Читается из os.environ, то есть из снимка, сделанного при старте Python.

Примеры

import os
os.environ['APP_MODE'] = 'debug'
print(os.getenv('APP_MODE'))   # → debug
print(os.getenv('NO_SUCH_VAR_XYZ', 'default'))   # → default
print(os.getenv('NO_SUCH_VAR_XYZ'))   # → None
print(int(os.getenv('RETRIES', '3')) + 1)   # → 4 — из окружения приходят только строки, число нужно привести явно
print(os.getenv('APP_MODE') == os.environ.get('APP_MODE'))   # → True — getenv это сокращение для os.environ.get

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности