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

1、下载linux平台的python3.x的安装包(我下载的是python3.6版本)

[root@localhost ~]# wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz

2、解压python3.6安装包

[root@localhost ~]# tar xf Python-3.6..tgz
[root@localhost ~]# ll
total
-rw-------. root root Jun : anaconda-ks.cfg
drwxr-xr-x. Mar : Python-3.6.
-rw-r--r--. root root Mar : Python-3.6..tgz

3、安装python3.6,默认安装路径为/usr/local

  --prefix=PREFIX install architecture-independent files in PREFIX
  [/usr/local]

#安装报错,缺失依赖库
[root@localhost Python-3.6.]# ./configure
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for python3.... no
checking for python3... no
checking for python... python
checking for --enable-universalsdk... no
checking for --with-universal-archs... no
checking MACHDEP... linux
checking for --without-gcc... no
checking for --with-icc... no
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/root/Python-3.6.':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details
#安装依赖库
[root@localhost Python-3.6.]# yum install gcc #安装python3.
[root@localhost Python-3.6.]# make && make install #make && make install 报错
zipimport.ZipImportError: can't decompress data; zlib not available
make: *** [install] Error
#安装zlib-devel
[root@localhost Python-3.6.]# yum install zlib-devel
#重新安装
[root@localhost Python-3.6.]# make && make install

4、python3.6已安装成功,在/usr/local/bin下生成命令python3

[root@localhost local]# ll /usr/local/bin/
total
lrwxrwxrwx. root root Jun : 2to3 -> 2to3-3.6
-rwxr-xr-x. root root Jun : 2to3-3.6
-rwxr-xr-x. root root Jun : easy_install-3.6
lrwxrwxrwx. root root Jun : idle3 -> idle3.
-rwxr-xr-x. root root Jun : idle3.
-rwxr-xr-x. root root Jun : pip3
-rwxr-xr-x. root root Jun : pip3.
lrwxrwxrwx. root root Jun : pydoc3 -> pydoc3.
-rwxr-xr-x. root root Jun : pydoc3.
lrwxrwxrwx. root root Jun : python3 -> python3.
-rwxr-xr-x. root root Jun : python3.
lrwxrwxrwx. root root Jun : python3.-config -> python3.6m-config
-rwxr-xr-x. root root Jun : python3.6m
-rwxr-xr-x. root root Jun : python3.6m-config
lrwxrwxrwx. root root Jun : python3-config -> python3.-config
lrwxrwxrwx. root root Jun : pyvenv -> pyvenv-3.6
-rwxr-xr-x. root root Jun : pyvenv-3.6

5、使用python3命令查看版本

[root@localhost local]# python3 -V
Python 3.6.
[root@localhost local]# python3
Python 3.6. (default, Jun , ::)
[GCC 4.8. (Red Hat 4.8.-)] on linux
Type "help", "copyright", "credits" or "license" for more information.

参考:http://www.cnblogs.com/freeweb/p/5181764.html

Centos7下不删除python2.x的情况下安装python3.x的更多相关文章

  1. 一次http请求,谁会先断开TCP连接?什么情况下客户端先断,什么情况下服务端先断?

    我们有2台内部http服务(nginx): 201:这台服务器部署的服务是account.api.91160.com,这个服务是供前端页面调用: 202:这台服务器部署的服务是hdbs.api.911 ...

  2. RPC 框架要实现这个功能,我们可以使用泛化调用。那什么是泛化调用呢?我们带着这个问题,先学习下如何在没有接口的情况下进行 RPC 调用。

    RPC 框架要实现这个功能,我们可以使用泛化调用.那什么是泛化调用呢?我们带着这个问题,先学习下如何在没有接口的情况下进行 RPC 调用.

  3. 使用mongoVUE删除大量数据的情况下失效问题

    昨天有一个系统出现了问题,导致半夜时大量的错误数据产生,早晨一早接到上边通知让把这些数据尽数删除. 不可否认在数据操作时mongoVUE更加直观,因此一般情况下我也都是使用这个工具,但是今天却出现了问 ...

  4. 关于python3与python2同时存在情况下导入pyqt失败解决记录

    最近感觉tkinter功能还是比较不适合新手做出高大上的界面,故开始使用pyqt,通过pip安装好了之后,利用qt设计师设计好界面之后,cmd运行之,报错提示没有找到pyqt5模块,IDE运行能正常加 ...

  5. Linux下MySQL在知道密码的情况下修改密码

    1.在知道原密码的情况下,进入MySQL: mysql -u root -p 2.进入 mysql数据库,然后通过语句修改密码: 我的MySQL版本是:mysql  Ver 14.14 Distrib ...

  6. VC6下 try catch 在release下的杯具(默认情况下,要加上throw语句catch才不会被优化掉)

    IDE:VC6 今天遇到一个小问题,把我郁闷了好久,××医生的VulEngine不时在wcsstr处发生crash,加了一番强大的参数检查后,再加上了强大的try catch,其实不是很喜欢用try和 ...

  7. [转] Centos7 yum lock,无法上网问题,以及安装python3.5

    centos 7 无法上网问题 转自 http://www.cnblogs.com/katios/p/5660336.html 博主本着学无止境的精神在虚拟机上安装了一个centos7 来敲敲命令行. ...

  8. 如何在已经存在python2的linux环境上安装python3

    最近看到好多人都在问在已经存在python2.7的环境下如何安装python3,于是我决定写下这篇文档,供大家学习参考,希望能够给大家带来帮助 有的人在安装的时候可能会先将python2卸载掉,这个地 ...

  9. 在Windows下如何创建虚拟环境(默认情况下)

    很多小伙伴平时在使用Python的时候,有的项目需要使用Python2来进行开发,有的项目则是需要Python3来进行开发.当不清楚怎么分开环境的时候,此时两个环境开始打架,彼此傻傻分不清楚.虚拟环境 ...

随机推荐

  1. jmeter函数简介

    1._char:把一组数字转化成Unicode字符. 2._counter:记录线程的迭代次数. 3._CSVRead:可以从文件中指定列的值. 4.${_CSVRead(D:\test.txt,0, ...

  2. SpringMVC_JDBC

    链接:https://pan.baidu.com/s/1a8Aht1eIeRYGb78X9v3ubA 密码:h2zy 未完,待续...

  3. PowerShell发送邮件(587)

    #定义邮件服务器 $smtpServer = "mail.xx.com" $smtpUser = "sender" $smtpPassword = " ...

  4. surging API

    基于.NET CORE微服务框架 -谈谈surging API网关 基于.NET CORE微服务框架 -浅析如何使用surging surging 系列 NET Core 2.0 在WIN7系统 的H ...

  5. 从PFX文件中获取私钥、公钥证书、公钥

    https://blog.csdn.net/ZuoYanYouYan/article/details/77868584 该类具体功能:根据pfx证书得到私钥.根据私钥字节数组获取私钥对象.根据公钥字节 ...

  6. React-Native开发笔记 持续更新

    1.css单位转换px2dp 在做页面开发的时候习惯了用rem去做css单位,处理各种尺寸数据,到了React-Native里面做app开发时,rem就不好用了,这个时候就需要转换成另外一个单位,基本 ...

  7. 开发jQuery插件的基本步骤

    在进行开发jQuery插件前,首先要了解一些知识: 1.闭包 1.1.闭包的作用: · 避免全局依赖 · 避免第三方破坏 · 兼容jQuery操作符'$'和jQuery 1.2.闭包的形式 (func ...

  8. Android常见UI组件之ListView(一)

    使用ListView显示一个长的项列表 1.新建一个名为"BasicView5"的Android项目. 2.改动BasicView5.java文件.改动后的程序例如以下: pack ...

  9. Redis系列七:redis持久化

    redis支持RDB和AOF两种持久化机制,持久化可以避免因进程退出而造成数据丢失 一.RDB持久化 RDB持久化把当前进程数据生成快照(.rdb)文件保存到硬盘的过程,有手动触发和自动触发 手动触发 ...

  10. Jmeter函数助手中添加自定义函数

    最近,群里的牛肉面大神有个需求,是将每个post请求的body部分做一个加密操作,其实这个需求不算难,用beanshell引入加密函数的包,然后调用就行了.只是,如果请求多了,每次都要调用一下自己加密 ...