一、 从Python官网到获取Python3的包, 切换到目录/usr/local/src

 #wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz

二、 使用命令如下命令进行解压缩:

xz -d Python-3.5..tar.xz // 将xz文件解压
tar -xf Python-3.5..tar

三、 在/usr/local路径下创建目录--python3.5, 为第4步的安装目录

 $mkdir /usr/local/python3.

四、 编译安装

 $cd /usr/local/src/Python-3.5.
#./configure --prefix=/usr/local/python3.
#make all
#make install
#make clean
#make distclean

五、 进入安装的绝对路径,检查是否安装成功

 $ /usr/local/python3./bin/python3. -V
Python 3.5.

六、查看环境变量,启动python时默认按照PATH的顺序进行查找,在/usr/bin中的python此时为Python2.6.6的。

 $echo $PATH
/usr/lib/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/gordon/bin

七、修改软连接,启动python时指向python3.5

1、备份python

mv  /usr/bin/python  /usr/bin/python2.6.6 // 备份centos中默认2.6.6的python

2、修改软连接

 sudo ln -s /usr/local/python3./bin/python3 /usr/bin/python

3、 验证默认是否启动python3.5

 $ python -V
 Python 3.5.

八、此时,系统中的yum命令将不能使用,因为其依赖原来的python2.6.6 修改yum的第一行:

 vim /usr/bin/yum
#!/usr/bin/python2.6.6

可能还需要修改该路径下的第一行

vim /usr/libexec/urlgrabber-ext-down 将 #! /usr/bin/python 改成  #!/usr/bin/python2.6.6

遇到的错误:

升级了python之后,需要重新安装pip命令。要不然pip安装的路径会出错。(因为之前安装python的时候,可能设置--prefix参数),最好是用源码安装的方式重新安装(http://www.cnblogs.com/hoojjack/p/8672612.html)

1、pip 错误

 [root@docker Python-3.5.]# pip
Traceback (most recent call last):
File "/usr/bin/pip", line , in <module>
from pip._internal import main
ImportError: No module named 'pip._internal'

说明pip的映射文件没有安装正确,在安装python3.5时,默认会安装pip3.5

备份原来系统默认的:mv  /usr/bin/pip  /usr/bin/pip_bak,创建pip3.5的软链接  ln -s /usr/local/bin/pip3.5  /usr/bin/pip

 [root@docker local]# mv /usr/bin/pip /usr/bin/pip_bak
[root@docker local]# ln -s /usr/local/bin/pip3. /usr/bin/pip
[root@docker local]# pip Usage:
pip <command> [options]

2、You are using pip version 7.1.2, however version 10.0.1 is available.You should consider upgrading via the 'pip install --upgrade pip' command.

 [root@docker local]# pip install --upgrade pip

3、升级后,交互模式下方向键、退格键 Backspace 等出现乱码的问题。

yum install readline  readline-devel

如果发现系统中已经有readline 库了,只是在/lib64/目录中,于是乎,做了软链到/usr/lib/ 和 /usr/lib64/

ln -s  /lib64/libreadline.so.6 /usr/lib/

ln -s  /lib64/libreadline.so.6 /usr/lib64/

ln -s  /lib64/libreadline.so.6.0 /usr/lib/

ln -s  /lib64/libreadline.so.6.0 /usr/lib64/

重新编译安装一遍python35,问题可以解决。

Reference:

[1] https://blog.csdn.net/nkd50000/article/details/79257881

[2] https://alfred-long.iteye.com/blog/1959853

CentOS6.5 下将 Python2.6.6 升级到Python3.5的更多相关文章

  1. 在CentOs6.5下安装Python2.7.6和Scrapy

    总在网上看大家的安装教程,这回自己也贡献一份!!! 和民航大学合作项目,去给人家装环境,连简单的Scrapy都没装上,虽然有对方硬件设施坑爹的因素,但主要还是自己准备不充分. 一份好的安装文档应该是可 ...

  2. MacOS下,Python2和Python3完美兼容使用(转)

    问题阐述: MacOS默认Python版本是2.7.10,随着Python3的进一步占有市场,Python2.7也将在2020年结束维护,所以在同一台电脑上安装多个Python版本势在必行. 一.py ...

  3. CentOS6 系统下升级python后yum命令使用时报错

    CentOS6 系统下升级python后yum命令使用时报错,如下: [root@xxxxxxx]#yumFile"/usr/bin/yum",line30exceptKeyboa ...

  4. python环境搭建-Linux系统下python2.6.6升级python3.5.2步骤

    [root@template ~]# python -v # /usr/lib64/python2.6/encodings/utf_8.pyc matches /usr/lib64/python2.6 ...

  5. 如何将Mac OS X10.9下的Python2.7升级到最新的Python3.3

    Mac OS X10.9默认带了Python2.7,不过现在Python3.3.3出来了,如果想使用最新版本,赶紧升级下吧.基本步骤如下. 第1步:下载Python3.3 下载地址如下: Python ...

  6. linux/centos6.5下编译安装python2.7和python3.5.2

    centos6.5环境下安装python2.7 解压python源码包 tar -xf Python-2.7.6.tar.xz 进入软件包目录 cd Python-2.7.6 添加配置项 ./conf ...

  7. 技巧方法 - CentOS6将Python2.6.6升级到Python2.7.6

    1.首先使用“python -V”命令查看python版本,我们测试主机显示的是2.6.6版,于是下面就着手将python2.6.6升级到Python2.7.6.python -V #查看python ...

  8. centos6/7 下升级openssl并安装python3

    今天是2019年的最后一天了,看了看自己今年写的随笔就一篇,实在有点少得可怜,就想着趁现在有点时间就再写一篇,^_^ centos6 或者centos 7 python 默认都是安装python 2 ...

  9. [转载] centos6.x x64 安装python2.7

    本文转载自: http://www.centoscn.com/image-text/install/2016/0323/6906.html CentOS的设计理念中有一点是:持久可用.要达到这个目的, ...

随机推荐

  1. SVN服务器多个项目的权限分组管理

    1.创建两个代码仓库 cd /home/svn svnadmin create project1 svnadmin create project2 2. 复制 authz  passwd 两文件到SV ...

  2. SpringMVC------在运行项目的时候run as 里面没有run on server 解决办法

    1.第一步:选中项目,右键,点击Properties 2.第二步:在查找框里输入Project Facets ,点击蓝色的,如图: 第三步:选中Dynamic Web Module,应用就可以了 转载 ...

  3. java之 ------ 可变參数和卫条件

    可变參数:适用于參数个数不确定.类型确定的情况,java把可变參数当做数组处理. 可变參数必须位于最后一项.当可变參数个数多于一个时,必将有一个不是最后一项,所以仅仅支持有一个可变參数. 可变參数的书 ...

  4. Spring JDBC入门

    Spring将替我们完成所有使用JDBC API进行开发的单调乏味的.底层细节处理工作. 操作JDBC时Spring可以帮我们做这些事情: 定义数据库连接参数,打开数据库连接,处理异常,关闭数据库连接 ...

  5. zabbix中Templates的jmx相关key调试方法

    1.下载 cmdline jmxclient 如果你有一个完美的模版,你可能可以忽略此步.但是大多数情况下你没有.况且 zabbix 默认的 tomcat 模版也不能很好的工作.这时候有一个工具来调试 ...

  6. Explaining Delegates in C# - Part 5 (Asynchronous Callback - Way 2)

    In this part of making asynchronous programming with delegates, we will talk about a different way, ...

  7. React Native(十一)——删除事件以及刷新列表

    需求:删除列表中的某一项,但不刷新整个页面,底下的数据顺势而上(第一张是原始数据,第二张是删除掉"你会介今年"这条动态后显示的数据). 中间的过程比较曲折,只因为刚开始的时候自己只 ...

  8. c++学习笔记——个单词转换的map程序详解

    实现功能:给定一个string,将它转换为另一个string.程序输入是两个文件,第一个文件保存转换规则,第二个文件为将要进行转换的文本. IDE:Windows7+VS2013 #include & ...

  9. Windows 系统提示“内存不足”的原因及解决方法

         Windows 系统提示“内存不足”的原因及解决方法 windows XP vista 及windows 7系统的电脑有时候会出现系统提示“内存不足”,这是由多方面原因造成的.本文具体分析下 ...

  10. 【大数据系列】hadoop单机模式安装

    一.添加用户和用户组 adduser hadoop 将hadoop用户添加进sudo用户组 sudo usermod -G sudo hadoop 或者 visudo 二.安装jdk 具体操作参考:c ...