从 python 脚本在 virtualenv 中打开 python 脚本

open python script in virtualenv from python script

我想从另一个 python 脚本中打开一个 python 脚本,但是在 virtualenv 中 我尝试了 os.systemsubprocess.call 但他们无法打开 virtualenv

os.system("workon cv") warning:

sh: 1: workon: not found

cmd = 'workon cv'

subprocess.call(cmd.split())     error:

    OSError: [Errno 2] No such file or directory

我解决了问题:

  1. 我想调用另一个 python 脚本的 python 脚本应该在 virtualenv

  2. 中打开
  3. 将所有代码放在main函数中并导入文件:import FileName

然后调用主函数:FileName.main()

workon 不是程序,而是来自 virtualenvwrapper 的 shell 函数。您不能在子进程中调用它,因为它会更改当前的 shell 环境。