首页 > 编程语言 > 详细

Python生态工具

时间:2020-07-20 15:01:15      阅读:74      评论:0      收藏:0      [点我收藏+]

Python生态工具

Python工作环境管理

Python2和Python3之间存在较大的差异,且由于各种原因导致Python2和Python3的长期共存(虽然2020年1月1日Python2已经不再维护,但是网络上的代码和书??上依然有部分采用Python2)

实际工作中,可能同时需要用到Python2和Python3,经常需要在Python2和Python3之间切换

  • 比如: Centos默认安装的是Python2版本,而且yum工具中也在使用python2,但是日常学习中使用python3作为开发环境

Pyenv - 管理不同的Python版本

Pyenv: Python版本管理工具,可以安装多个不同的Python版本,不同的Python版本之间切换也比较简单

  • 安装多个不同的Python版本
  • 实现不同Python版本的切换(包含pip)

切换Python的版本之后,与版本相关的依赖(pip)也会一起切换,不用担心不同版本在系统中是否相互干扰

Pyenv的网址

  • Pyenv 不能安装在Windows系统上
  • 在Windows系统上安装pyenv-win工具,是Pyenv的适应版本,操作一致

Pyenv的安装

直接从GitHub下载项目到本地,设置环境变量和启动自动补全的功能

$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
 正克隆到 ‘/home/test/.pyenv‘...
remote: Enumerating objects: 39, done.
remote: Counting objects: 100% (39/39), done.
remote: Compressing objects: 100% (24/24), done.
remote: Total 18096 (delta 17), reused 24 (delta 10), pack-reused 18057
接收对象中: 100% (18096/18096), 3.61 MiB | 4.00 KiB/s, done.
处理 delta 中: 100% (12306/12306), done.

$echo ‘export PYENV_ROOT="$HOME/.pyenv"‘ >> ~/.bash_profile
$echo ‘export PATH="$PYENV_ROOT/bin:$PATH"‘ >> ~/.bash_profile
$echo -e ‘if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi‘ >> ~/.bash_profile

安装完成之后需要重新载入配置文件 source .bash_profile

Pyenv的使用

  1. 查看pyenv当前支持的版本,通过install命令

    pyenv可以安装不同的Python版本,也可以安装不同的Python实现

    pyenv install --list

  2. 安装Python

    pyenv install -v 3.8.0

    • Pyenv是下载源码包编译安装的,需要提前安装依赖

    • pyenv会从官方地址下载相应的版本,比较慢,而且经常失败

      • 可以从其他地方下载到源码包,放到~/.pyenv/cache目录下,再执行安装,会使用已经存在的源码包
      # 提前安装依赖
      $ yum -y install gcc zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel git
      # 从其他的源安装
      $  v=3.8.0; wget https://npm.taobao.org/mirrors/python//$v/Python-$v.tar.xz -P ~/.pyenv/cache/; pyenv install $v
      
  3. 查看当前存在的版本

    ? pyenv versions

    • 输出结果前面带*表示当前使用的版本
  4. 选择不同的Python版本

    ? pyenv global 3.8.0

  5. 删除Python版本

    ? pyenv unistall 3.8.0

virtualenv - 管理不同的项目

virtualenv 本身是一个独立的项目,用以隔离不同项目的工作环境

  • 需要使用不同的NumPy的版本,明显不能使用常规的方法在一台服务器上完成
  • virtualenv 将不同的numpy安装到不同的工作环境中,需要那个,进入那个工作环境

组合Pyenv和virtualenv就可以实现Python和第三方库任意版本的组合, 拥有强大的灵活性,避免项目之间的干扰

virtualenv是一个独立的工具,可以单独使用,但是如果使用了Pyenv,就需要安装pyenv-virtualenv插件,而不是通过virtualenv软件使用virtualenv功能

pyenv-virtualenv网址

pyenv-virtualenv的安装

pyenv-virtualenv的安装

$ git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
$ echo ‘eval "$(pyenv virtualenv-init -)"‘ >> ~/.bash_profile

与pyenv安装类似,完成之后需要重新载入配置文件 source .bash_profile

安装完成之后,可以为同一个Python解释器安装多个不同的工作环境

  1. 查看工作环境

    pyenv virtualenvs

  2. 通过activatedeactiveta进入和退出一个工作环境

Python生态工具

原文:https://www.cnblogs.com/ZhaoLong-study/p/13344382.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!