01.查看Linux版本

 [root@web ~]# cat /etc/redhat-release
CentOS Linux release 7.6. (Core)
[root@web ~]# uname -a
Linux web 3.10.-957.21..el7.x86_64 # SMP Tue Jun :: UTC x86_64 x86_64 x86_64 GNU/Linux

02.安装pyenv

 [root@web ~]# curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

03.配置环境变量

 [root@web ~]# cd /root
[root@web ~]# cp .bash_profile .bash_profile.bak
[root@web ~]# vim .bash_profile
#pyenv
export PATH="~/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
[root@web ~]# source .bash_profile

04.系统自带python版本为2.7.5

 [root@web ~]# python -V
Python 2.7.

05.安装的pyenv版本为1.2.15

 [root@web ~]# pyenv -v
pyenv 1.2.

06.升级pyenv命令

 [root@web ~]# pyenv update

07.查看可用的python版本有哪些

 [root@web ~]# pyenv install --list

08.安装python3.6.4、python2.7.2和python3.6.7

 [root@web ~]# pyenv install 3.6.
[root@web ~]# pyenv install 2.7.
[root@web ~]# pyenv install 3.6.

09.查看安装的python版本有哪些

 [root@web ~]# pyenv versions
* system (set by /root/.pyenv/version)
2.7.
3.6.
3.6.
[root@web ~]#

10.配置root用户的python版本为3.6.4

[root@web ~]# cd /root/
[root@web ~]# pyenv virtualenv 3.6. root364
[root@web ~]# pyenv activate root364
[root@web ~]# pyenv global 3.6.
(root364) [root@web ~]# python -V
Python 3.6.

11.去除当前使用的virtualenv

(root364) [root@web ~]# pyenv deactivate
[root@web ~]#

12.删除某个virtualenv

 [root@web ~]# pyenv virtualenv-delete root364
pyenv-virtualenv: remove /root/.pyenv/versions/3.6./envs/root364? y
[root@web ~]#

13.设置/tmp目录的pyenv环境为python3.6.7

 [root@web ~]# cd /tmp/
[root@web tmp]# pyenv virtualenv 3.6. tmp367
Looking in links: /tmp/tmpshtqhsk6
Requirement already satisfied: setuptools in /root/.pyenv/versions/3.6./envs/tmp367/lib/python3./site-packages (39.0.)
Requirement already satisfied: pip in /root/.pyenv/versions/3.6./envs/tmp367/lib/python3./site-packages (10.0.)
[root@web tmp]# pyenv activate tmp367
[root@web tmp]# pyenv local tmp367
(tmp367) [root@web tmp]# python -V
Python 3.6.
(tmp367) [root@web tmp]#

在实际的生产环境中,有时候一台机器上面可能需要不同的Python环境,避免每次都要升级或者降级系统自带的Python版本,所以我们使用pyenv来管理不同的Python版本,从而提高效率。

只需要在一台服务上安装好pyenv,再去下载好需要的Python版本和所需要的依赖库,将这个pyenv环境直接打包,批量拷贝到其他服务器,解压即可切换所需要的python版本使用,省去很多琐碎的工作时间。

Python多版本管理器pyenv的更多相关文章

  1. Python多版本管理器-pyenv 介绍及部署记录

    一. pyenv简单介绍 在日常运维中, 经常遇到这样的情况: 系统自带的Python是2.x,而业务部署需要Python 3.x 环境, 此时需要在系统中安装多个Python版本,但又不能影响系统自 ...

  2. 你应该学会的Python多版本管理工具Pyenv

    目录 Pyenv 简介 安装pyenv 通过pyenv安装python各种发行版 pyenv命令 多版本Python的管理 Pyenv常见问题Wiki Pyenv 简介 首先,该工具是在类linux环 ...

  3. centos下python多版本管理(pyenv+python+virtualenv+ipython)

    pyenv是个多版本python管理器,可以同时管理多个python版本共存,如pypy,miniconde等等 1 环境准备 安装相关软件和pyenv1.1 安装相关软件yum install -y ...

  4. python多版本管理包pyenv

    前言: CentOS7  默认版本 python2.7.5 ,但是目前项目开发都是在python3的环境下,而单独编译安装python3时会出现各种异常!!! 系统默认python2.7又不能删除,否 ...

  5. Ubuntu中python多版本管理工具-pyenv

    ubuntu系统版本:16.04 # lsb_release -aNo LSB modules are available.Distributor ID: UbuntuDescription: Ubu ...

  6. Python多版本管理-pyenv

    经常遇到这样的情况: 系统自带的Python是2.x,自己需要Python 3.x,此时需要在系统中安装多个Python,但又不能影响系统自带的Python,即需要实现Python的多版本共存,pye ...

  7. python多版本管理工具(pyenv)

    在学习和利用python开发的很多情况下,需要多版本的Python并存.此时需要在系统中安装多个Python,但又不能影响系统自带的 Python.pyenv 就是这样一个 Python 版本管理器. ...

  8. 转 Python多版本管理-pyenv

    #######for linux https://www.cnblogs.com/saneri/p/7642316.html 经常遇到这样的情况: 系统自带的Python是2.x,自己需要Python ...

  9. MacOS下Python的多版本管理(pyenv)

    与windows下设置绝对路径不同,pyenv使用了一种更优雅的方式来管理Python的版本.pyenv通过在$PATH的最前面插入一个垫片路径(shims),例如:~/.pyenv/shims:/u ...

随机推荐

  1. 插入排序的代码实现(C语言)

    void insert_sort(int arr[], int len) { for (int i = 1; i < len; ++i) { if (arr[i] < arr[i - 1] ...

  2. Verilog模块概念和实例化#转载自Jason from Lofter

    Verilog模块概念和实例化 模块的概念 模块(module)是verilog最基本的概念,是v设计中的基本单元,每个v设计的系统中都由若干module组成. 1.模块在语言形式上是以关键词modu ...

  3. 通过myclipse建立一个简单的Hibernate项目(PS:在单元测试中实现数据的向表的插入)

    Hibernate的主要功能及用法: Ⅰ.Hibernate封装了JDBC,使Java程序员能够以面向对象的思想对数据库进行操作 Ⅱ.Hibernate可以应用于EJB的J2EE架构,完成数据的持久化 ...

  4. pat 1041 Be Unique(20 分)

    1041 Be Unique(20 分) Being unique is so important to people on Mars that even their lottery is desig ...

  5. NetCore基于EasyNetQ的高级API使用RabbitMq

    一.消息队列 消息队列作为分布式系统中的重要组件,常用的有MSMQ,RabbitMq,Kafa,ActiveMQ,RocketMQ.至于各种消息队列的优缺点比较,在这里就不做扩展了,网上资源很多. 更 ...

  6. React组件间的通讯

    组件化开发应该是React核心功能之一,组件之间的通讯也是我们做React开发必要掌握的技能.接下来我们将从组件之间的关系来分解组件间如何传递数据. 1.父组件向子组件传递数据 通讯是单向的,数据必须 ...

  7. PostgreSQL空间数据库创建备份恢复(PostGIS vs ArcGIS)

    梯子 PostGIS创建备份恢复ArcGIS创建备份恢复 PostGIS 创建 安装就不必介绍了,windows下使用安装工具Application Stack Builder,选择空间扩展PostG ...

  8. 领扣(LeetCode)用队列实现栈 个人题解

    使用队列实现栈的下列操作: push(x) -- 元素 x 入栈 pop() -- 移除栈顶元素 top() -- 获取栈顶元素 empty() -- 返回栈是否为空 注意: 你只能使用队列的基本操作 ...

  9. 小白学习React官方文档看不懂怎么办?2.JSX语法

      接下来我们就要讲到JSX语法了,在我们讲它之前,我们先引入一个概念叫语法糖.     听到这个名字首先我们可能会想到一个词叫”糖衣炮弹“,那么什么叫糖衣炮弹呢,就是给你说各种好听的话,来迷惑你,但 ...

  10. 解决FirewallD is not running问题

    centos7 1.查看firewalld状态:systemctl status firewalld,如果是dead状态,即防火墙未开启. 2.开启防火墙systemctl start firewal ...