Из документации:
Если платформа поддерживает эту
unsetenv()
функцию, вы можете удалить элементы в этом сопоставлении, чтобы сбросить переменные среды.unsetenv()
будет вызываться автоматически при удалении элемента из os.environ и при вызове одного из методовpop()
илиclear()
.
Однако я хочу что-то, что будет работать независимо от наличия unsetenv()
. Как удалить элементы из сопоставления, если оно недоступно? os.environ['MYVAR'] = None
?
python
environment-variables
Фредли
источник
источник
unsetenv
согласно документации, работает на "большинстве разновидностей Unix, Windows".$ unset MYVAR
работают командыОтветы:
Просто
del os.environ['MYVAR']
должно сработать.
источник
del os.environ
работал, когдаos.unsetenv
не работал на OSX.del
: docs.python.org/2/tutorial/…MYVAR
не существует в среде, вы получите исключение. Вы можете обернуть его в,try:
но это неудачно.Вы по-прежнему можете удалять элементы из сопоставления , но это не приведет к удалению переменной из среды, если
unsetenv()
она недоступна.del os.environ['MYVAR']
источник