1. pyenv 的安装

  1. $ yum install git -y
  2. $ yum install gcc make patch gdbm-devel openssl-devel sqlite-devel zlib-devel bzip2-devel readline-devel libffi-devel -y
  3. $ git clone https://github.com/yyuu/pyenv.git ~/.pyenv
  4. $ echo 'export PATH=~/.pyenv/bin:$PATH' >> ~/.bashrc
  5. $ echo 'export PYENV_ROOT=~/.pyenv' >> ~/.bashrc
  6. $ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
  7. $ source ~/.bashrc

2.常用命令

  1. pyenv install --list # 列出可安装版本
  2. pyenv install <version> # 安装对应版本
  3. pyenv install -v <version> # 安装对应版本,若发生错误,可以显示详细的错误信息
  4. pyenv versions # 显示当前使用的python版本
  5. pyenv which python # 显示当前python安装路径
  6. pyenv global <version> # 设置默认Python版本
  7. pyenv local <version> # 当前路径创建一个.python-version, 以后进入这个目录自动切换为该版本
  8. pyenv shell <version> # 当前shell的session中启用某版本,优先级高于global 及 local

3.使用virtualenv

3.1安装virtualenv

  1. git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
  2. echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
  3. 这个插件将安装在主文件夹下的.pyenv文件夹中。
  4. source ~/.bash_profile
  1. pyenv virtualenv env # 从默认版本创建虚拟环境
  2. pyenv virtualenv 3.6.4 env-3.6.4 # 创建3.6.4版本的虚拟环境
  3. pyenv activate env-3.6.4 # 激活 env-3.6.4 这个虚拟环境
  4. pyenv deactivate # 停用当前的虚拟环境
  5. # 自动激活
  6. # 使用pyenv local 虚拟环境名
  7. # 会把`虚拟环境名`写入当前目录的.python-version文件中
  8. # 关闭自动激活 -> pyenv deactivate
  9. # 启动自动激活 -> pyenv activate env-3.6.4
  10. pyenv local env-3.6.4
  11. pyenv uninstall env-3.6.4 # 删除 env-3.6.4 这个虚拟环境

发现的错误

莫名其妙的BUILD FEILED (Ubuntu 16.04 using python-build 1.2.2)

  1. 问题是缺少依赖包,各个系统见以下链接
  2. https://github.com/pyenv/pyenv/wiki/Common-build-problems

使用 pyenv 管理不同的 Python 版本的更多相关文章

  1. Python关键点笔记之使用 pyenv 管理多个 Python 版本依赖环境

    0x00 背景 从接触Python以来,一直都是采用virtualenv和virtualenvwrapper来管理不同项目的依赖环境,通过workon.mkvirtualenv等命令进行虚拟环境切换, ...

  2. 使用pyenv管理不同的python版本

    1. pvenv的安装 git clone https://github.com/yyuu/pyenv.git ~/.pyenv echo 'export PYENV_ROOT="$HOME ...

  3. pyenv,轻松切换各种python版本

    pyenv,轻松切换各种python版本 解决什么问题 mac自带python2,md又不能删掉他 linux也自带python2,这玩意都过时了,也不赶紧换掉 安装pyenv git 安装 git ...

  4. 使用pyenv安装多个Python版本

    pyenv是一个便于使用多版本Python环境的工具 pyenv使用shell脚本编写的,只需要下载就可以使用了,不需要root用户,这个我比较喜欢. 具体介绍看网址:https://github.c ...

  5. Mac OS下使用pyenv管理Python版本

    问题的由来 在开发过程中,可能会遇到多个版本同时部署的情况. Mac OS自带的Python版本是2.x,自己开发需要Python3.x 系统自带的是2.6.x,开发环境是2.7.x 由于Mac机器系 ...

  6. 安装的 Python 版本太多互相干扰?pyenv 建议了解一下。

    写在之前 我们都知道现在的 Python 有 Python2 和 Python3,但是由于各种乱七八糟的原因导致这俩哥们要长期共存,荣辱与共,尴尬的是这哥俩的差异还比较大,在很多时候我们可能要同时用到 ...

  7. 在macOS上通过pyenv安装和切换多版本Python

    1. 安装homebrew 官网 http://brew.sh/index_zh-cn.html 打开终端,在终端中粘贴如下脚本 /usr/bin/ruby -e "$(curl -fsSL ...

  8. 管理Mac的Python环境

    问题描述 我的Mac自带了版本为2.7.10的Python却没有用于管理依赖的pip工具.而我在使用刚开始学习Python时,从其官网下载了安装脚本安装了3.6版本的Python.脚本自动配置了环境变 ...

  9. Linux系统之路——python多版本共存问题(ps:自行切换python版本,pip安装遇到的一些问题)

    经常遇到这样的情况: 系统自带的Python是2.6,自己需要Python 2.7中的某些特性: 系统自带的Python是2.x,自己需要Python 3.x: 此时需要在系统中安装多个Python, ...

随机推荐

  1. struct结构体 重载运算符

    struct node{ int x,y,z; }; bool operator<(node a,node b) { if(a.x!=b.x) return a.x<b.x; if(a.y ...

  2. Adaboost和随机森林

    在集成学习中,主要分为bagging算法和boosting算法.随机森林属于集成学习(Ensemble Learning)中的bagging算法. Bagging和Boosting的概念与区别该部分主 ...

  3. Anaconda的CondaHTTPError问题

    在Anaconda+Spyder配置Opencv的过程中遇到了缺乏cv2的问题,当时我在cmd的窗口(管理员身份)中输入了如下命令 conda install --channel https://co ...

  4. SpringCloud组件和概念介绍(一)

    一:什么是微服务(Microservice) 微服务英文名称Microservice,Microservice架构模式就是将整个Web应用组织为一系列小的Web服务.这些小的Web服务可以独立地编译及 ...

  5. Mysql.新建数据库和用户

    //建立数据库 drop database if exists 你的db名; create database 你的db名 CHARACTER SET utf8 COLLATE utf8_general ...

  6. javascript DOM练习

    一.定时器 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset=" ...

  7. C# 实现验证码识别,使用AspriseOCR.dll

    验证码(Captcha)基于十道安全栅栏, 为网页.App.小程序开发者打造立体.全面的人机验证,最大程度地保护注册登录.活动秒杀.点赞发帖.数据保护等各大场景下的业务安全.要做自动化脚本程序,就要能 ...

  8. 异数OS 织梦师-纤手(二)-- LPC RPC篇

    异数OS 织梦师-纤手(二)– LPC RPC篇 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455784 ...

  9. [洛谷P3254] [网络流24题] 圆桌游戏

    Description 假设有来自m 个不同单位的代表参加一次国际会议.每个单位的代表数分别为ri (i =1,2,--,m). 会议餐厅共有n 张餐桌,每张餐桌可容纳ci (i =1,2,--,n) ...

  10. SuperSocket Code解析

    SuperSocket1.6Code解析 Normal Socket System.Net.Sockets.dll程序集中使用socket类: 服务器: 创建socket:_socket = new ...