脚本python安装库与virtualenv上的pip

时间:2016-03-11 11:35:55

标签: python virtualenv

我想使用virtualenv来设置我的环境并安装特定的库。 我想编写整个过程的脚本,但到目前为止,它还没有工作。

这是我的尝试:

import subprocess
import pip

virtualenv_dir="my_directory"

subprocess.call(["virtualenv", virtualenv_dir, "--system-site-packages"])

activate_this_file="{}/bin/activate_this.py".format(virtualenv_dir)

# instead of sourcing the /bin/activate file, I update dynamically
# my current python environment
execfile(activate_this_file, dict(__file__ = activate_this_file))
pip.main(["install","my_lib"])

这样,my_lib安装在/usr/lib/python2.7/site-packages而不是" my_directory / lib / python2.7 / site-packages",如我所愿。

1 个答案:

答案 0 :(得分:0)

我想出了以下解决方法:

# In main.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import subprocess, os
virtualenv_dir="my_directory"

subprocess.call(["virtualenv", virtualenv_dir, "--system-site-packages"])
subprocess.call([os.path.join(virtualenv_dir, 'bin/python'),"-c","import pip; pip.main(['install','my_lib'])])