为什么os.system('set foo = bar')不起作用?

时间:2009-10-01 21:21:20

标签: python environment-variables environment

可能是一个愚蠢的问题:为什么我不能用这个设置环境变量?

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

我知道os.environ,这对我有用。我只是为什么前者不起作用感到困惑。

1 个答案:

答案 0 :(得分:11)

参见讨论here - exportset都是shell命令,无论是在Windows还是Unix上,它们仍然不可避免地被发送到子进程运行shell(无论是bash,cmd.exe,无论如何),当子进程终止时(即os.system返回给调用者时),任何进一步的操作都没有了。