删除旧版Python && 安装最新版Python

4

AttributeError: 'module' object has no attribute 'openssl_md_meth_names'

在使用pip安装Flask或其他库时,我一直收到此错误。

我查看了其他attributeerror的帖子,并且它们对我有所帮助,但是这个openssl模块却很少见。我尝试安装Python 2.7.9。

那么,我应该采取什么步骤来删除Python并执行全新安装?之前我执行过sudo apt-get remove python,那是一个大错误。不过我已经从中恢复过来了。

2个回答

5

我会尝试:

sudo apt-get install --reinstall python2.7

我建议您在命令行中使用Python2.7而不是Python,以确保使用正确的可执行文件。为了避免未来的麻烦,我建议您通过Anaconda安装Python。教程在这里:http://docs.continuum.io/anaconda/。使用此工具,您可以将Python安装在与系统Python不同的位置,并且可以为不同的项目使用不同的版本和不同的软件包,而不会破坏您的系统(尽管它需要一定的学习曲线)。它还对像numpy这样的库提供良好的支持,编译时可能会出现问题,您可以使用pip进行安装。

1
如果您使用apt-get安装Python,则会获得您的Linux发行版支持的任何Python版本。
如果您使用Debian,则可以从“不稳定”存储库(代号为“sid”)获取2.7.9。您不一定需要升级整个系统到“不稳定”状态;请阅读有关“固定”软件包的信息。固定很棘手,我会避免使用它。
您还可以选择仅下载Python源代码并在系统上构建它。然后,您将从/usr/local/bin运行Python 2.7.9,并且仍将拥有系统支持的稳定Python。
如果您最终安装自己构建的Python版本,则可能需要研究VirtualEnv。http://simononsoftware.com/virtualenv-tutorial-part-2/

1
即使我在虚拟环境中,我仍然收到错误消息:File "/usr/lib/python2.7/hashlib.py", line 138, in <module> _hashlib.openssl_md_meth_names) AttributeError: 'module' object has no attribute 'openssl_md_meth_name - phillipsK

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接