我要编辑哪个文件,以及如何编辑?我创建了一个虚拟环境。
答案 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?
将“export PYTHONPATH = / usr / local / lib / python2.0”添加到〜/ .bashrc文件中并输入“source~ / .bashrc”或“。〜/ .bashrc”来源。
1)转到“控制”面板 2)双击系统 3)转到“高级”选项卡 4)单击Environment Variables
在“系统变量”窗口中,检查是否有名为PYTHONPATH的变量。如果您已经有一个,请检查它是否指向正确的目录。如果您还没有,请单击“新建”按钮并创建它。
或者,您也可以在代码下方执行操作: -
import sys
sys.path.append("/home/me/mypy")