Linux下默认系统自带python2.6的版本,这个版本被系统很多程序所依赖,所以不建议删除,如果使用最新的Python3那么我们知道编译安装源码包和系统默认包之间是没有任何影响的,所以可以安装python3和python2共存

  首先去Python官网下载python3的源码包,网址:https://www.python.org/

  由于之前做一个什么东西忘了,只支持2.7和3.5,对别的版本的没有良好的支持,所以虽然现在版本已经进化了很多,对于3.X本人依旧选用3.5版本的python

进去之后点击导航栏的Downloads,也可以鼠标放到Downloads上弹出菜单选择Source code,就是源码包的意思,这里选择最新版本3.5.1,当然下面也有很多其他历史版本,点进去之后页面下方可以看到下载链接,包括源码包、Mac OSX安装包、Windows的安装包

  

  这里选择第一个下载即可,下载的就是源码包:Python-3.5.1.tgz,下载好之后上传到服务器,开始准备安装

  释放文件:

tar -xvzf Python-3.5.1.tgz

  进入目录:

cd Python-3.5.1/

  添加配置:

./configure --prefix=/usr/python

  这里配置自己的安装目录,接下来编译源码:

make

  执行安装:

make install

  整个过程大约5-10分钟,安装成功之后,安装目录就在/usr/python

  系统中原来的python在/usr/bin/python,通过ls -l可以看到,python是一个软链接,链接到本目录下的python2.6

  我们可以把这个删除,也可以新建一个python3的软链接,只不过执行时python要改成python3,或者python脚本头部声明要改为#!/usr/bin/python3

  这里为了方便建议先重命名一下,然后建立个软链接就可以了,之前的程序头部也不用更改:

$ mv /usr/bin/python /usr/bin/python.bak
$ ln -s /usr/python/bin/python3 /usr/bin/python

  这样就建立好了,以后直接执行python命令,就相当于调用python3,实际上python3也是个软链接,链接到python3.5.1,这个多次链接其实不影响,主要是为了版本升级更加方便,不用改版本号了

  python3新版本的安装就是这些,不用卸载旧版本,新版本同样正常使用

当然如果想不覆盖原来的python的话直接在bin目录下创建一个python3的软连接即可。

此方法没有pip

=============================================================

如果要有pip需要先安装yum install openssl-devel

或者openssl和...分开安装,然后

安装一个yum install zlib-devel

,之后官网下载setuptools

tar -zxvf setuptools-19.6.tar.gz

python3 setup.py build

python3 setup.py install

完成后再从对应官网链接下载一个pip

tar -zxvf pip-9.0.1.tar.gz

python3 setup.py build

python3 setup.py install

之后再次进行python3.5的make和make install

基本就可以了

备注:中间过程中如果有bz2的压缩,用jxvf

最新文章

  1. 解读ASP.NET 5 & MVC6系列(4):核心技术与环境配置
  2. 对.net技术组件的分析和选择
  3. oracle调用java方法的例子(下面所有代码都是在sql/plus中写)
  4. 去除android手机滚动条
  5. node js 模块分类
  6. c/c++面试总结(3)
  7. bzoj 3851: 2048 dp优化
  8. RCP打包出来 运行 出现 JVM terminated.exit code = 13
  9. Hibernate用Oracle的sequence生成自增Id
  10. 开启Golang编程第一章
  11. linux下redis的安装方法
  12. Python中的算数运算符
  13. Front-end Job Interview Questions
  14. nginx request_time 和upstream_response_time
  15. 细说tomcat之类加载器
  16. 找不到main
  17. 452. Minimum Number of Arrows to Burst Balloons扎气球的个数最少
  18. SaltStack 批量安装软件
  19. 蓝牙4.0 BLE入门
  20. Android Bundle存储数据类型

热门文章

  1. 文件是数据(字节)流的抽象-为什么C++中会把文件操作抽象为fstream?
  2. codechef Transform the Expression 转换成逆波兰式
  3. python3的print函数
  4. JavaScript在浏览器中把文本保存为文件的方法
  5. springAOP(Aspect)权限访问页面
  6. EF Core如何输出日志到Visual Studio的输出窗口
  7. Vue教程:组件Component详解(六)
  8. 【Cmd命令行】基础—findstr与for循环
  9. Oracle子查询之高级子查询
  10. oracle系列(二)用户管理