如何为版本2和版本3设置不同的PYTHONPATH?

2024-10-01 17:42:03 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我在.bashrc中设置PYTHONPATH如下:

export PYTHONPATH=$PYTHONPATH:/ver2packages

当我检查python 3中的python路径时:

^{pr2}$

ver2packages中,如果存在与版本3的包同名的包,则可能存在冲突和错误。在

有没有办法为每个版本的pythonpath设置pythonpath?在


Tags: 路径版本错误exportbashrcpythonpath办法同名
3条回答

您可以使用路径配置(.pth)文件为python2和python3设置不同的sys.path。在

例如,要在python2的sys.path中添加一个目录,请在python2站点包的任何目录中创建一个.pth文件(即由^{}^{}返回):

Python 2.7.11 (default, Dec  6 2015, 15:43:46) 
[GCC 5.2.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import site
>>> site.getsitepackages()
['/usr/lib/python2.7/site-packages', '/usr/lib/site-python']

然后创建一个.pth文件(以根用户身份):

^{pr2}$

有关详细信息,请参阅^{}模块文档。在

您的选项取决于操作系统。在

对于ubuntu,如果你使用的是标准的python包。。。在

如果您希望在系统范围内执行此操作(并且您具有管理权限),可以通过/usr/lib/pythonN.M/site.pysys.path添加其他路径。在

仅对您自己而言,系统默认的site.py文件已经将$HOME/.local/lib/pythonN.M/site-packages放入sys.pathiff它存在),这样您就可以创建目录并将特定于版本的包放在那里。在

对于Linux,您可以创建指向库文件夹的符号链接,并将其放入目标版本中:

ln -s /your/path /usr/local/lib/python3.6/site-packages

这不是关于改变PYTHONPATH,而是一个替代方案。在

相关问题 更多 >

    热门问题