Почему не работает os.system ('set foo = bar')? - PullRequest
1 голос
/ 02 октября 2009

Возможно глупый вопрос: почему я не могу установить переменную окружения с этим?

os.system('set foo=bar') # on windows

Я знаю о os.environ, и это работает для меня. Я просто не понимаю, почему первый не работает.

1 Ответ

11 голосов
/ 02 октября 2009

См. Обсуждение здесь - export и set - обе команды оболочки, и в Windows или Unix они по-прежнему неизбежно адресованы дочернему процессу запуск оболочки (будь то bash, cmd.exe и т. д.) и, таким образом, отсутствие каких-либо дальнейших действий, когда этот дочерний процесс завершается (т. е. когда os.system возвращается к вызывающей стороне).

...