zoukankan      html  css  js  c++  java
  • CentOS 7.x 配置Python3环境

    公司常用的Linux发行版为CentOS 7.x,环境里默认只有Python2,要使用Python3需要自己安装。

    通过yum安装

    通过yum安装是非常省心的。而且CentOS 8版本已经包含了Python3,但是这个方式不够灵活,有时候我们会需要其他版本的Python或者要管理多个版本的Python,那么就需要下面提到的源码编译等方法。

    通过源码编译

    如果要选择特定的版本,那么我们最好从源码来进行编译。

    1. 首先访问官网并选择所需版本的源码下载,放置在/opt目录下。

      cd /opt
      wget --no-check-certificate https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz
      tar xzvf Python-3.7.2.tgz
      
    2. 有可能你需要安装编译过程中所需的工具

      # 首先更新
      yum update
      # 一般就安装下面的依赖就行
      yum install gcc openssl-devel bzip2-devel libffi-devel -y
      # 还有一种一股脑全装上的
      yum groupinstall -y 'Development Tools'
      yum install libffi-devel openssl-devel bzip2-devel expat-devel gdbm-devel sqlite-devel zlib-devel ncurses-devel readline-devel tk-devel 
      # 如果libffi-devel没装,那么会提示 ModuleNotFoundError: No module named '_ctypes'
      # 如果openssl-devel没装,虽然编译会成功,但是无法安装新包。编译时会提示 Could not build the ssl module!
      # ssl这里容易有坑,遇到了网上再搜解决办法吧。
      # Python3.7编译安装ssl模块需要安装openssl或libressl(二选一)。
      # RH系(CentOS)中的ssl开发库是openssl,Debian系(Ubuntu)中的是libssl-devel。版本要求openssl >= 1.0.2 而 libressl >= 2.6.4
      
    3. 开始编译,位置为/usr/local/python3.7。如果运行 ./configure 时不带 --prefix=/my/path,那么会安装文件到/usr/local/bin/以及/usr/local/lib两个目录

      cd Python-3.7.2/
      ./configure --prefix=/usr/local/python3.7 --enable-optimizations
      make && make install
      make clean && make distclean
      
    4. 添加软链接,这样可以在任意路径下运行python3或python3.7来调用

      注意:
      (CentOS7)如果把/usr/bin/python 符号链接改为指向 /usr/bin/python3,会导致yum无法使用。 因为因为yum默认使用的python2,可以修改两个文件,/usr/libexec/urlgrabber-ext-down和/usr/bin/yum,开头的一行#!/usr/bin/pyhon 为 #!/usr/bin/python2 让yum正常使用。

      ln -s /usr/local/python3.7/bin/python3.7 /usr/bin/python3
      ln -s /usr/local/python3.7/bin/python3.7 /usr/bin/python3.7
      
    5. 看环境需要,修改pip源

      pip install pip -U   # 如果下面的config命令失败,可能是因为pip版本太低不支持config,那么需要先升级pip
      pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
      pip config list
      
    6. 安装并配置虚拟环境

      pip3 install virtualenv
      pip3 install virtualenvwrapper
      vim ~/.bashrc
      
      # 指定virtualenvwrapper执行的python版本
      VIRTUALENVWRAPPER_PYTHON=/usr/local/python3.7/bin/python3.7
      
      # 指定虚拟环境存放目录,.virtualenvs目录名可自拟
      export WORKON_HOME=$HOME/.virtualenvs
      
      # virtualenvwrapper.sh所在目录
      source /usr/local/bin/virtualenvwrapper.sh
      
      source ~/.bashrc
      
    7. 创建并使用虚拟环境,指定版本为python3

      mkvirtualenv --python=/usr/bin/python3 my_env    # 创建虚拟环境
      workon my_env                                    # 切换到某个虚拟环境
      pip install -r requirements.txt                  # 安装依赖
      deactivate 				         # 退出当前虚拟环境
      rmvirtualenv my_env 	                         # 删除某个虚拟环境
      lsvirtualenv 			                 # 列出所有虚拟环境
      cdvirtualenv 			                 # 进入到虚拟环境所在的目录
      
    8. 删除编译安装(未指定目录)的Python3。如果需要删除,那么参考以下方法。

      #通过安装日志可知Python3被安装在如下目录了
      /usr/local/lib/python3.6
      /usr/local/bin/2to3-3.6 to
      /usr/local/bin/pyvenv-3.6
      /usr/local/bin/pydoc3.6
      /usr/local/bin/idle3.6
      # 删除文件
      rm -rf /usr/local/lib/python3.6
      rm -rf /usr/local/bin/2to3-3.6 to
      rm -rf /usr/local/bin/pyvenv-3.6
      rm -rf /usr/local/bin/pydoc3.6
      rm -rf /usr/local/bin/idle3.6
      

    通过conda安装

    参考官方文档

    卸载方法

    删除安装目录,例如 /opt/Anaconda3
    清除配置,一般在 ~/.bashrc最后几行,删除然后source ~/.bashrc即可。

  • 相关阅读:
    第一周C语言作业
    C语言I博客园作业08
    C语言I博客作业07
    C语言I博客作业06
    C语言I博客作业05
    C语言I博客作业04
    C语言II博客作业04
    C语言II博客作业03
    C语言II博客作业02
    C语言II博客作业01
  • 原文地址:https://www.cnblogs.com/jamesnpu/p/13596009.html
Copyright © 2011-2022 走看看