如何在已创建的虚拟环境中设置 pythonpath?

2024-10-14 08:40:00
admin
原创
94
摘要:问题描述:我要编辑什么文件?怎么编辑?我创建了一个虚拟环境。解决方案 1:这个问题最优雅的解决方案就在这里。原始答案仍然存在,但这是一个混乱的解决方案:如果您想要更改PYTHONPATH虚拟环境中的使用,您可以将以下行添加到虚拟环境的bin/activate文件:export PYTHONPATH=&...

问题描述:

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


解决方案 1:

这个问题最优雅的解决方案就在这里。

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


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

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

这样,PYTHONPATH每次使用这个虚拟环境时都会设置新的。

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

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

export OLD_PYTHONPATH="$PYTHONPATH"

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

export PYTHONPATH="$OLD_PYTHONPATH"

解决方案 2:

您可以创建一个.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

解决方案 3:

@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找到

解决方案 4:

  1. 初始化你的虚拟环境

cd venv

source bin/activate
  1. 只需通过输入以下命令来设置或更改你的 python 路径:

export PYTHONPATH='/home/django/srmvenv/lib/python3.4'
  1. 要检查 python 路径,请在 python 中输入:

   python

      >> import sys

      >> sys.path

解决方案 5:

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

activate您可以在此处找到修补后的脚本。。它是 virtualenv 1.11.6 创建的 activate 脚本的替代品。

然后我在我的中添加了类似这样的内容.virtualenvrc

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

解决方案 6:

这里的答案真的让我很困惑。我不确定我是否遗漏了什么,但我发现pyvenv.cfgvenv/pyvenv.cfg
文件的全部内容是

home = C:UsersUser.pyenvpyenv-winersions.10.7
include-system-site-packages = false
version = 3.10.7

我所做的就是更改UserNewUser,这样就阻止了错误
No Python at 'C:UsersUser.pyenvpyenv-win ersions.9.6python.exe'

但是是的,我浪费了一个小时,而 ctrl+shift+f 可以轻松解决这个问题。

解决方案 7:

我见过的解决这个问题最简单的方法是执行以下操作,

python虚拟环境PYTHON路径在虚拟环境文件夹中的“pyvenv.cfg”中设置。

home = C:Users{USERNAME}AppDataLocalMicrosoftWindowsAppsPythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0

include-system-site-packages = false 版本 = 3.11

您可以将其编辑为所需的 Python 版本。进行更改后,我遇到了同样的错误,我通过创建一个新的“pyvenv.cfg”文件并使用新的 Python 路径将其替换为现有文件来修复此问题。停用虚拟环境并激活后

这应该有用。至少对我来说是这样

解决方案 8:

这里已经回答了->我的虚拟环境(python)是否导致我的 PYTHONPATH 中断?

UNIX/Linux

将“export PYTHONPATH=/usr/local/lib/python2.0”添加到 ~/.bashrc 文件并通过输入“source ~/.bashrc”或“. ~/.bashrc”来获取它。

视窗 XP

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

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

Python代码

或者,您也可以执行以下操作:-

import sys
sys.path.append("/home/me/mypy") 
相关推荐
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   681  
  在项目管理领域,集成产品开发(IPD)流程以其高效、协同的特点,被众多企业视为提升产品竞争力的关键。IPD流程强调跨部门、跨职能的紧密合作,以确保产品从概念到市场各个环节的无缝衔接。然而,实现这一目标并非易事,它需要企业深刻理解并掌握IPD流程中的跨部门协作艺术。本文将深入探讨IPD流程中跨部门协作的三个关键点,旨在为...
IPD项目管理咨询   9  
  掌握IPD流程图:提升团队协作的关键路径在当今快速变化的商业环境中,团队协作的效率与效果直接关系到项目的成功与否。集成产品开发(Integrated Product Development,简称IPD)作为一种先进的研发管理理念,通过跨部门、跨领域的协同工作,能够显著提升产品开发的速度与质量。而IPD流程图,则是这一理...
IPD流程阶段   9  
  IPD流程概述:理解其核心价值与实施背景集成产品开发(Integrated Product Development,简称IPD)是一种先进的产品开发管理理念,它强调跨部门协作、市场导向和快速响应变化的能力。IPD流程不仅关注产品本身的技术创新,更注重将市场、研发、生产、销售等各个环节紧密集成,以实现产品从概念到市场的高...
华为IPD是什么   7  
  在项目管理领域,IPD(Integrated Product Development,集成产品开发)流程以其跨部门协作、高效决策和快速响应市场变化的特点,被众多企业视为提升竞争力的关键。然而,实践IPD流程并非易事,项目管理中的种种错误往往阻碍了其效果的充分发挥。本文旨在深入探讨如何在实施IPD流程时避免这些常见错误,...
IPD框架   7  
热门文章
项目管理软件有哪些?
云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用