centos7 下安装python3后发现自带的2.75没有覆盖,怎么使用新版本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7 下安装python3后发现自带的2.75没有覆盖,怎么使用新版本相关的知识,希望对你有一定的参考价值。

不要轻易更新Python版本,不然有可能会导致Linux很多命令不兼容新的版本1、yuminstallopenssl-develbzip2-develexpat-develgdbm-develreadline-develsqlite-devel(虚拟机有安装1的,请从第二步开始)2、wgetpython9、查看版本python-v不兼容如:问题:[root@nameuser]#yumFile"/usr/bin/yum",line30exceptKeyboardInterrupt,e:^原因:这是因为yum采用python作为命令解释器,这可以从/usr/bin/yum文件中第一行#!/usr/bin/python发现。而python版本之间兼容性不太好,使得2.X版本与3.0版本之间存在语法不一致问题。而CentOS5自带的yum采用的是python2.4,当系统将python升级到2.6或3.0后,出现语法解释错误。解决法:很简单,一是升级yum,一是修改yum的解释器为旧版本python2.4(如果你没有采用覆盖升级的话,覆盖的话重新拷贝一个python2版本文件)升级yum的作法就不详述了;修改yum的解释器为旧版本python2.4:vi/usr/bin/yum将第一行"#!/usr/bin/python"改为"#!/usr/bin/python2.4"即可 参考技术A 如果不想引入更多的东西,我认为折中的方法有两个:

interactive模式打开的时候用python3
在你写的脚本的shabang部分写
#!/usr/bin/env python3
#或者
#!/usr/bin/python3

解释一下
1. 在你的$PATH里,是有python/python2[.7]/python3[.4]类似的这几个可执行文件的,而python这个通常会是一个软链接,而默认这个软链接是指向python2.7的,所以当你在命令行直接输入python的时候会调用2.7。
2. 执行执行你的脚本的Python版本,这个只会在你
chmod +x your_script.py

之后再
./your_script.py

的时候才有用,正常你只需要

python3 your_script.py

就可以了本回答被提问者采纳
参考技术B 你打 python3 就是新版本了。

Centos sudo命令执行python与普通用户执行python版本不同

前段时间新安CentOS 6.5虚拟机,顺便将自带的Python2.6升级到Python 2.7和安装pip。http://blog.csdn.net/jcjc918/article/details/11022345

然而发现随后通过pip安装的包,在python里使用import命令提示找不到module,排查后发现pip安装在了python 2.6的文件夹下。

由于sudo命令下python的寻址结果依然为python 2.6,因此在pip安装文件夹下,通过sudo命令sudo python setup.py install安装pip,会默认安装至python2.6的文件夹下。解决办法:使用sudo -i python setup.py install 安装,此时会寻址到python2.7,或直接指定python2.7的位置,进而成功安装。同理,当使用pip安装时,也应使用sudo -i命令执行pip install 

有关sudo会寻址到python2.6的问题,参考了http://stackoverflow.com/questions/15441440/sudo-python-runs-old-python-version

以上是关于centos7 下安装python3后发现自带的2.75没有覆盖,怎么使用新版本的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7下安装Python3,超详细完整教程

对于Centos7,安装python3.6无法使用方向键问题的解决方法

centos7.2下pip3 + python3.5 + django + nginx + uwsgi

如何在centos下更改默认版本的python

Centos7下如何安装python3与虚拟环境?

CentOS7.5 Python3安装pip报错:ModuleNotFoundError: No module named '_ctypes' --Python3