如何在已经创建的 viralenv 中设置 Python 路径?

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

183847 次浏览

这里已经有答案了-> 我的虚拟环境(python)是否导致我的 Python 路径中断?

UNIX/LINUX

将“ export PYTHONPATH =/usr/local/lib/python2.0”添加到 ~/. bashrc 文件中,并通过键入“ source ~/. bashrc”OR“ . ~/. bashrc”为其提供源代码。

视窗 XP

1)转到控制面板 2)双击系统 3)进入高级选项卡 4)点击环境变量

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

蟒蛇密码

或者,您也可以在代码下面执行:-

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

这个问题最优雅的解决方案是 给你

最初的答案仍然存在,但这是一个混乱的解决方案:


如果你想改变一个 viralenv 中使用的 PYTHONPATH,你可以在你的 viralenv 的 bin/activate文件中添加以下代码:

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

这样,每次使用这个 viralenv 时都会设置新的 PYTHONPATH

编辑: < em > (回应@RamRachum 的评论)

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

export OLD_PYTHONPATH="$PYTHONPATH"

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

export PYTHONPATH="$OLD_PYTHONPATH"

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

向虚拟环境添加目录的一种方法是安装 viralenvwrapper (这对许多事情都很有用) ,然后执行

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

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

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

关于这个特性的具体文档可以在 Http://virtualenvwrapper.readthedocs.org/en/latest/command_ref.html?highlight=add2virtualenv

我修改了我的激活脚本来源于文件 .virtualenvrc,如果它存在于工作目录中,并且在激活/停用时保存/恢复 PYTHONPATH

你可以在这里找到修补过的 activate脚本。 ,它是由 viralenv 1.11.6创建的激活脚本的替代品。

然后我在我的 .virtualenvrc中加入了这样的内容:

export PYTHONPATH="${PYTHONPATH:+$PYTHONPATH:}/some/library/path"
  1. 初始化你的 Virtual alenv
cd venv


source bin/activate
  1. 只需输入以下命令设置或更改 Python 路径:
export PYTHONPATH='/home/django/srmvenv/lib/python3.4'
  1. 检查 python 路径,请在 python 中输入:
   python


\>\> import sys


\>\> sys.path


您可以创建一个包含要搜索的目录的 .pth文件,并将其放在 {venv-root}/lib/{python-version}/site-packages目录中。例如:

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设置的本地。