你如何在已经创建的virtualenv中设置你的pythonpath?

时间:2011-01-21 09:24:23

标签: python linux unix virtualenv

我要编辑哪个文件,以及如何编辑?我创建了一个虚拟环境。

6 个答案:

答案 0 :(得分:111)

编辑#2

正确的答案是@arogachev's one


如果您想更改virtualenv中使用的PYTHONPATH,可以将以下行添加到virtualenv的bin/activate文件中:

export PYTHONPATH="/the/path/you/want"

这样,每次使用此virtualenv时都会设置新的PYTHONPATH

编辑: (回答@RamRachum的评论)

要将其恢复为deactivate上的原始值,您可以添加

export OLD_PYTHONPATH="$PYTHONPATH"

在前面提到的行之前,将以下行添加到bin/postdeactivate脚本中。

export PYTHONPATH="$OLD_PYTHONPATH"

答案 1 :(得分:65)

@ s29的评论应该是一个答案:

将目录添加到虚拟环境的一种方法是安装virtualenvwrapper(这对很多东西很有用)然后再做

mkvirtualenv myenv
workon myenv
add2virtualenv . #for current directory
add2virtualenv ~/my/path

如果要删除这些路径,请编辑文件myenvhomedir/lib/python2.7/site-packages/_virtualenv_path_extensions.pth

有关virtualenvwrapper的文档可在http://virtualenvwrapper.readthedocs.org/en/latest/

找到

有关此功能的具体文档,请访问: http://virtualenvwrapper.readthedocs.org/en/latest/command_ref.html?highlight=add2virtualenv

答案 2 :(得分:9)

您可以创建包含要搜索的目录的.pth文件,并将其放在site-packages目录中。 E.g:

cd $(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")
echo /some/library/path > some-library.pth

效果与将/some/library/path添加到sys.path相同,并保持virtualenv设置的本地效果。

答案 3 :(得分:1)

我修改了激活脚本以获取文件.virtualenvrc(如果它存在于当前目录中),并保存/恢复PYTHONPATH激活/停用。

You can find the patched activate script here.。它是virtualenv 1.11.6创建的激活脚本的直接替代品。

然后我将这样的内容添加到我的.virtualenvrc

export PYTHONPATH="${PYTHONPATH:+$PYTHONPATH:}/some/library/path"

答案 4 :(得分:1)

初始化你的vertualenv(1. cd venv和2. source bin / activate)。

只需输入以下命令 -

即可设置或更改您的python路径

export PYTHONPATH =' /home/django/srmvenv/lib/python3.4'

用于检查python路径输入 1)

type  python then 
>> import sys
>> sys.path

谢谢你...

答案 5 :(得分:-19)

这里已经回答了 - > Is my virtual environment (python) causing my PYTHONPATH to break?

UNIX / LINUX

将“export PYTHONPATH = / usr / local / lib / python2.0”添加到〜/ .bashrc文件中并输入“source~ / .bashrc”或“。〜/ .bashrc”来源。

WINDOWS XP

1)转到“控制”面板 2)双击系统 3)转到“高级”选项卡 4)单击Environment Variables

在“系统变量”窗口中,检查是否有名为PYTHONPATH的变量。如果您已经有一个,请检查它是否指向正确的目录。如果您还没有,请单击“新建”按钮并创建它。

PYTHON CODE

或者,您也可以在代码下方执行操作: -

import sys
sys.path.append("/home/me/mypy")