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

2024-10-14 08:40:00
admin
原创
73
摘要:问题描述:我要编辑什么文件?怎么编辑?我创建了一个虚拟环境。解决方案 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") 
相关推荐
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   601  
  华为IPD与传统研发模式的8大差异在快速变化的商业环境中,产品研发模式的选择直接决定了企业的市场响应速度和竞争力。华为作为全球领先的通信技术解决方案供应商,其成功在很大程度上得益于对产品研发模式的持续创新。华为引入并深度定制的集成产品开发(IPD)体系,相较于传统的研发模式,展现出了显著的差异和优势。本文将详细探讨华为...
IPD流程是谁发明的   7  
  如何通过IPD流程缩短产品上市时间?在快速变化的市场环境中,产品上市时间成为企业竞争力的关键因素之一。集成产品开发(IPD, Integrated Product Development)作为一种先进的产品研发管理方法,通过其结构化的流程设计和跨部门协作机制,显著缩短了产品上市时间,提高了市场响应速度。本文将深入探讨如...
华为IPD流程   9  
  在项目管理领域,IPD(Integrated Product Development,集成产品开发)流程图是连接创意、设计与市场成功的桥梁。它不仅是一个视觉工具,更是一种战略思维方式的体现,帮助团队高效协同,确保产品按时、按质、按量推向市场。尽管IPD流程图可能初看之下显得错综复杂,但只需掌握几个关键点,你便能轻松驾驭...
IPD开发流程管理   8  
  在项目管理领域,集成产品开发(IPD)流程被视为提升产品上市速度、增强团队协作与创新能力的重要工具。然而,尽管IPD流程拥有诸多优势,其实施过程中仍可能遭遇多种挑战,导致项目失败。本文旨在深入探讨八个常见的IPD流程失败原因,并提出相应的解决方法,以帮助项目管理者规避风险,确保项目成功。缺乏明确的项目目标与战略对齐IP...
IPD流程图   8  
热门文章
项目管理软件有哪些?
云禅道AD
禅道项目管理软件

云端的项目管理软件

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

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

内置subversion和git源码管理

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

免费试用