gpt4 book ai didi

python - ubuntu 中的 python 版本冲突

转载 作者:太空狗 更新时间:2023-10-30 00:45:22 25 4
gpt4 key购买 nike

所以我的服务器上有 python 2.7.2,我需要将它更新到 python 2.7.3。所以我尝试删除 2.7.2 版本,然后使用源安装新版本。我无法删除 2.7.2 版本,因为系统使用它在服务器上运行关键服务,所以我安装了 2.7.3 版本,希望之后我能够删除旧版本。我仍然无法删除旧版本,尽管我在安装任何无法导入的模块时能够执行 python 2.7.3。我将路径添加到 sys.path 并开始查找模块,但导入它会导致另一个错误。

我的 python 执行/usr/local/bin/python,这是问题所在的 2.7.3 版本。如果我尝试像这样执行 python/usr/bin/python,它会执行旧版本并且一切正常,我可以导入新安装的模块。

那么我该怎么做才能使 python 2.7.3 工作?

我搜索了很多教程并尝试了诸如在 python 上的 .pth 文件中添加库之类的操作,我开始查找模块,但是在导入它时出现如下错误:

>>> import numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/numpy/__init__.py", line 137, in <module>
import add_newdocs
File "/usr/local/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 9, in <module>
from numpy.lib import add_newdoc
File "/usr/local/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 4, in <module>
from type_check import *
File "/usr/local/lib/python2.7/dist-packages/numpy/lib/type_check.py", line 8, in <module>
import numpy.core.numeric as _nx
File "/usr/local/lib/python2.7/dist-packages/numpy/core/__init__.py", line 5, in <module>
import multiarray
ImportError: /usr/local/lib/python2.7/dist-packages/numpy/core/multiarray.so: undefined symbol: PyUnicodeUCS4_AsUnicodeEscapeString

感谢帮助

编辑问题已解决

因此,为了解决丢失的导入模块,我在/usr/local/lib/python2.7/site-packages/下创建了一个 .pth 文件,其中包含 python 模块所在的目录,python 开始查找它们。要解决兼容性问题,您可以从源代码安装 python 并指定 unicode 执行 ./configure --enable-unicode

更多信息here

最佳答案

永远不要乱用系统 python,永远。

你应该做的是将带有 --prefix 的 python 2.7.3 安装到你的主目录中,然后使用 virtualenv -p/home/myuser/path/to/python

无论如何,使用 virtualenv 来运行您自己的应用程序几乎总是一个好主意,因为它避免了您在自己的应用程序中使用的库污染系统包目录。

关于python - ubuntu 中的 python 版本冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19246000/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com