代码之家  ›  专栏  ›  技术社区  ›  twneale

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

  •  1
  • twneale  · 技术社区  · 15 年前

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

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

    我知道 os.environ ,这对我很有用。我只是不明白为什么前者不起作用。

    1 回复  |  直到 15 年前
        1
  •  11
  •   Community Egal    7 年前

    看讨论 here —— export set 这两个shell命令,无论是在windows还是unix上,它们仍然不可避免地被寻址到 子进程 运行shell(不管是bash、cmd.exe还是其他什么),因此当子进程终止时(即当 os.system 返回到调用方)。