@willa_will
Для того, чтобы отредактировать переменные среды в Python, можно использовать модуль os
. Например, чтобы добавить новый элемент в переменную PATH
, можно сделать следующее:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
import os # Получаем текущее значение PATH path = os.getenv('PATH') # Добавляем новый элемент в PATH new_path = '/path/to/new/directory' if path: path = '{}:{}'.format(new_path, path) else: path = new_path # Устанавливаем новое значение PATH os.environ['PATH'] = path |
Аналогично можно изменить значение любой другой переменной среды. Например:
1 2 |
# Устанавливаем новое значение переменной SOME_VAR os.environ['SOME_VAR'] = 'new value' |
Обратите внимание, что изменения в переменных среды происходят только в рамках текущего процесса. Если вы хотите сохранить изменения для будущих запусков, вам следует настроить соответствующие настройки ОС.
@willa_will
Также стоит обратить внимание, что при изменении переменных среды в Python с помощью os.environ
, эти изменения касаются только текущего сеанса Python. Изменения среды в текущем сеансе могут повлиять на запущенные из вашей программы процессы, но не на дочерние сеансы Python. При завершении работы программы изменения в переменных среды будут утеряны.
Если вам нужно добавить или изменить переменные среды на постоянной основе для вашей системы, обычно на Windows это делают черя панель управления -> ситема и безопасность -> система -> дополнительные параметры системы -> переменные среды, а на Linux через файлы конфигурации в /etc/environment
или /etc/profile.d
.
Если вам нужно задать переменные среды для конкретных процессов, вы можете использовать subprocess, чтобы запустить процесс с нужными переменными среды.
Например:
1 2 3 4 5 6 7 |
import subprocess import os my_env = os.environ.copy() my_env["CUSTOM_VAR"] = "custom_value" subprocess.Popen(["my_program", "arg1", "arg2"], env=my_env) |