Олег Марков
Переменные среды в Python
Введение
Переменные среды позволяют приложению получать информацию о конфигурации системы, путях к ресурсам или параметрах запуска. В Python работа с переменными окружения осуществляется через модуль os, который предоставляет удобные функции для чтения и изменения этих значений. В этой статье мы разберём, как работать с переменными среды в Python и использовать их в практических сценариях.
Получение переменных среды
Для чтения значения переменной используют os.environ:
import os
# Получение значения переменной PATH
path_value = os.environ.get("PATH")
print("PATH:", path_value)Если переменной с указанным именем не существует, get возвращает None. Это позволяет безопасно проверять наличие переменных без возникновения ошибок.
Установка переменных среды
Изменение или добавление новых переменных происходит через присвоение в os.environ:
import os
os.environ["MY_VAR"] = "123"
print("MY_VAR:", os.environ.get("MY_VAR"))Эти изменения действуют только в рамках текущего процесса Python и его дочерних процессов.
Для более глубокого понимания работы с переменными среды, управления окружением и практического использования скриптов Python, включая работу с системными функциями и путями, рекомендуем курс Основы Python. На курсе 209 уроков и 34 упражнения, AI-тренажёры для практики 24/7, решение задач с живым ревью наставника и еженедельные встречи помогут закрепить навыки работы с переменными окружения и другими инструментами Python.
Удаление переменных среды
Для удаления используйте del:
import os
os.environ["TEMP_VAR"] = "test"
del os.environ["TEMP_VAR"]
print(os.environ.get("TEMP_VAR")) # NoneУдаление переменной актуально для временных значений, которые не должны сохраняться в процессе выполнения программы.
Работа с переменными среды для настройки приложений
Переменные среды часто используют для конфигурации приложений без изменения кода. Например, настройка режима работы:
import os
mode = os.environ.get("APP_MODE", "development")
if mode == "production":
print("Запуск в продакшн режиме")
else:
print("Запуск в режиме разработки")Здесь переменная APP_MODE позволяет переключать поведение приложения между средами.
Частые ошибки
- Прямое изменение системных переменных вне Python не отражается автоматически в
os.environ. - Попытка доступа к несуществующей переменной без
getвызоветKeyError. - Изменения переменных среды действуют только для текущего процесса и его потомков.
Частозадаваемые вопросы
Можно ли установить переменную среды навсегда через Python? Python позволяет изменить переменную только для текущего процесса. Для постоянного изменения нужно использовать настройки системы или оболочки.
Как задать значение переменной с умолчанием?
Использовать os.environ.get("VAR_NAME", "default_value").
Переменные среды чувствительны к регистру? Да, в большинстве систем, особенно в Linux.
Заключение
Переменные среды в Python обеспечивают гибкую настройку приложений и управление конфигурацией без изменения кода. С помощью модуля os можно получать, устанавливать и удалять переменные, а также использовать их для динамической конфигурации.
Для системного изучения работы с переменными окружения и закрепления практики рекомендуем курс Основы Python. В первых 3 модулях доступно бесплатное содержание, что позволяет попробовать работу с переменными среды и другими инструментами Python на практике.
Постройте личный план изучения Python до уровня Middle — бесплатно!
Python — часть карты развития Backend
100+ шагов развития
30 бесплатных лекций
300 бонусных рублей на счет
Все гайды по Python
Лучшие курсы по теме

Основы Python
Антон Ларичев
Nest.js с нуля
Антон Ларичев