最近开始学习python。

python火了这么久,我终于还是跪舔它了,我是一个跟风的人,学过C、C#、JAVA、PHP,无一例外的浅尝即止,不知道我这双已经近视的眼,确认过的眼神还对不对,希望python是我对的它。
顺便求大神们别再学了,我跟不上了。

言归正传,CentOS7默认已经安装了python2.7的版本,而且yum命令及其他还用到它,所以我们不能删除系统默认安装的python。

那只有在系统中安装自己需要的版本(通常是更高更新的版本),并且和默认版本共存。
具体操作步骤,大概可分为以下几个:

  • 查看系统是否安装python,如有且版本不对,则备份;
  • 修改yum的配置文件;
  • 安装新版本python;
  • 修改python的软链接文件;

一、查看是否已经安装了python(本机器为CentOS Linux release 7.5.1804,最小化安装)
    1.使用python -V命令查看是否安装了python:
        # python -V
        Python 2.7.5
    2.很明显是安装了python的2.7.5版本,这不是我所需要的,所以对这个版本进行备份:
        # which python
        /usr/bin/python
        # cd /usr/bin
        # ls -la python*
        lrwxrwxrwx. 1 root root    7 Jun 20 15:14 python -> python2
        lrwxrwxrwx. 1 root root    9 Jun 20 15:14 python2 -> python2.7
        -rwxr-xr-x. 1 root root 7216 Apr 11 15:36 python2.7
    3.可以看到系统的python命令实际上执行的是python2.7,我们备份下这个链接文件
        # mv python python.bak

二、修改yum配置文件
    1.查看yum文件
        # ls -la /usr/bin/yum*
        -rwxr-xr-x. 1 root root 801 Apr 13 20:58 /usr/bin/yum
    2.查看urlgrabber文件
        # ls -la /usr/libexec/urlgrabber-ext-down
        -rwxr-xr-x. 1 root root 2603 Aug 26  2013 /usr/libexec/urlgrabber-ext-down
    3.使用vim更改上述文件的文件头,把#!/usr/bin/python修改为#!/usr/bin/python2
        # vim /usr/bin/yum
        # vim /usr/libexec/urlgrabber-ext-down

三、安装新版本python
    1.安装编译环境及可能使用到的依赖
        # yum groupinstall "Development Tools"
        # yum install -y ncurses-libs zlib-devel mysql-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
    2.下载最新的版本(目前最新是3.6.5),下载地址:https://www.python.org/downloads/source
        # wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz
    3.编译安装
        # tar -xvf Python-3.6.5.tar.xz
        # cd Python-3.6.5
        # ./configure --prefix=/usr/local/python3.6 --enable-optimizations
        # make && make install
        注:--prefix,安装路径;--enable-optimizations,优化选项,大概有10%的性能提升(网上说法,没验证)

四、修改软链接
    1.创建系统软链接
        # ln -s /usr/local/python3.6/bin/python3.6 /usr/bin/python
        # ln -s /usr/local/python3.6/bin/pip3.6 /usr/bin/pip
    2.查看
        # python -V
        # pip -V

文章到此结束。

CentOS7 Installing Python3的更多相关文章

  1. Centos7 安装python3

    Centos7 安装python3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #安装sqlite-devel yum -y ...

  2. centos7安装 python3.6,且保留2.7版本

    CENTOS7安装PYTHON3.6 1. 安装python3.6可能使用的依赖# yum install openssl-devel bzip2-devel expat-devel gdbm-dev ...

  3. CentOS7 安装Python3,开发SocketIO 客户端

    CentOS7安装Python3,开发SocketIO 客户端 参考:https://blog.csdn.net/lovefengruoqing/article/details/79284573 步骤 ...

  4. CentOS7上Python3.5安装

    CentOS7上Python3.5安装 1.下载 https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz 2.上传到服务器 3. yum in ...

  5. CentOS7+ anaconda3 + Python-3.6 + tensorflow-cpu-1.5安装和配置

    CentOS7+ anaconda3 + Python-3.6 + tensorflow-cpu-1.5安装和配置 ========================================== ...

  6. centos7下python3与python2共存并且开启py3虚拟环境

    因为下载视频需要用到python3环境,今天在我的win上安装下载工具死活安装不上去,在大盘鸡上一下就安装成功了...可能在win上不兼容吧...无奈只能在大盘鸡上进行折腾了,顺便几个笔记 由于大盘鸡 ...

  7. centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题。

    centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题. 原因:yum调用Python,启动程/usr/bin/yum就是一个python ...

  8. Linux(4)- centos7安装python3、Linux下安装、配置virtualenv、确保开发环境的一致性、虚拟环境之virtualenvwrapper、vim

    一.centos7安装python3 1.下载python3的源码包 下载地址:https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz cd ...

  9. 转载: Centos7 升级python3,解决升级后不兼容问题

    Centos7配置更新国内yum源 http://blog.csdn.net/qingguiyu/article/details/50721956 Centos7 升级python3,解决升级后不兼容 ...

随机推荐

  1. 如何将你的 Vue.js 项目部署在云开发静态托管之上

    云开发静态托管是云开发提供的静态网站托管的能力,静态资源(HTML.CSS.JavaScript.字体等)的分发由腾讯云对象存储 COS 和拥有多个边缘网点的腾讯云 CDN 提供支持. 在云开发静态托 ...

  2. Python生成一维码

    参考页面 https://pypi.org/project/python-barcode/ 利用python-barcode的库 一.安装python-barcode库 #安装前提条件库 pip in ...

  3. 2016NOIP普及组T2回文日期

    回文日期 分类:枚举,函数 [题目描述] 日常生活中,通过年.月.日这三个要素可以表示出一个唯一确定的日期. 牛牛习惯用8位数字表示一个日期,其中,前4位代表年份,接下来2位代表月份,最后2位代表日期 ...

  4. 用Python打造电脑人脸屏幕解锁神器附带接头暗号!

    前言 最近突然有个奇妙的想法,就是当我对着电脑屏幕的时候,电脑会先识别屏幕上的人脸是否是本人,如果识别是本人的话需要回答电脑说的暗语,答对了才会解锁并且有三次机会.如果都没答对就会发送邮件给我,通知有 ...

  5. Certified Scrum Master CSM 中文资料大全

    课程概览 本课程由中国唯一一位获CST认证培训师及LeSS-Friendly Scrum Trainer双重认证讲师,丰富一线实战经验的Scrum教练讲授:姜信宝 BoB Jiang. 敏捷变革中心是 ...

  6. serialize和json_encode 区别

    (1)serialize主要用于php的序列化,存储到文件或者数据库中,json_encode 也是序列化,但是 主要用于与其他语言比如js进行交互使用,对于传输来说,json有许多优点. (2)在显 ...

  7. 对于WebP格式入门解读

    因为项目中需要用到大量动画效果,前期尝试过几种方案,比如GIF.帧动画.lottie.SVGA等格式的动画渲染方案,发现都存在各式各样的问题.比如: 1,GIF格式.5秒的动画,一张图大小可能就会达到 ...

  8. Firefox 66 发布,阻止网站自动播放声音

    Firefox 66 发布了,此版本在桌面版中带来的新特性包括: Firefox 现在阻止网站自动播放声音,如果需要可以单独调整 改进的搜索体验: 当打开许多选项卡时,可以更快地查找特定网页:现在可以 ...

  9. Week-1 linux命令行重点整理

    ①仅对当前用户: ~/.bashrc ②对所有用户有效: /etc/bashrc screen命令:创建新screen会话screen –S [SESSION]加入screen会话screen –x ...

  10. Echarts设置点击事件

    简单明了. echarts初始化完成之后,给实例对象通过on绑定事件. 这里的事件包括: 'click','dblclick','mousedown','mouseup','mouseover','m ...