Python多版本管理器pyenv
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的更多相关文章
- Python多版本管理器-pyenv 介绍及部署记录
一. pyenv简单介绍 在日常运维中, 经常遇到这样的情况: 系统自带的Python是2.x,而业务部署需要Python 3.x 环境, 此时需要在系统中安装多个Python版本,但又不能影响系统自 ...
- 你应该学会的Python多版本管理工具Pyenv
目录 Pyenv 简介 安装pyenv 通过pyenv安装python各种发行版 pyenv命令 多版本Python的管理 Pyenv常见问题Wiki Pyenv 简介 首先,该工具是在类linux环 ...
- centos下python多版本管理(pyenv+python+virtualenv+ipython)
pyenv是个多版本python管理器,可以同时管理多个python版本共存,如pypy,miniconde等等 1 环境准备 安装相关软件和pyenv1.1 安装相关软件yum install -y ...
- python多版本管理包pyenv
前言: CentOS7 默认版本 python2.7.5 ,但是目前项目开发都是在python3的环境下,而单独编译安装python3时会出现各种异常!!! 系统默认python2.7又不能删除,否 ...
- Ubuntu中python多版本管理工具-pyenv
ubuntu系统版本:16.04 # lsb_release -aNo LSB modules are available.Distributor ID: UbuntuDescription: Ubu ...
- Python多版本管理-pyenv
经常遇到这样的情况: 系统自带的Python是2.x,自己需要Python 3.x,此时需要在系统中安装多个Python,但又不能影响系统自带的Python,即需要实现Python的多版本共存,pye ...
- python多版本管理工具(pyenv)
在学习和利用python开发的很多情况下,需要多版本的Python并存.此时需要在系统中安装多个Python,但又不能影响系统自带的 Python.pyenv 就是这样一个 Python 版本管理器. ...
- 转 Python多版本管理-pyenv
#######for linux https://www.cnblogs.com/saneri/p/7642316.html 经常遇到这样的情况: 系统自带的Python是2.x,自己需要Python ...
- MacOS下Python的多版本管理(pyenv)
与windows下设置绝对路径不同,pyenv使用了一种更优雅的方式来管理Python的版本.pyenv通过在$PATH的最前面插入一个垫片路径(shims),例如:~/.pyenv/shims:/u ...
随机推荐
- 分组取topN
假设有这样一个文件,文件内容如下 class1 class2 class1 class1 class2 class2 class1 class2 class1 class2 要求按照班级分组取出每个班 ...
- shell脚本3——调试
bash -x file.sh 这样会把执行到的语句全部打印出来 #!/bin/bash 不会打印的程序块 set -v 需要打印的程序块 set -v 不会打印的程序块
- 源码分析RocketMQ消息轨迹
目录 1.发送消息轨迹流程 1.1 DefaultMQProducer构造函数 1.2 SendMessageTraceHookImpl钩子函数 1.3 TraceDispatcher实现原理 2. ...
- F#周报2019年第47期
新闻 相遇WebWindow,.NET Core上的跨平台webview类库 使用Bolero在WebAssembly中运行F# 用于你团队代码库的AI辅助IntelliSense Jupyter N ...
- Maven 无法下载依赖包的解决方法---三步dao!!!
版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明. 本文链接:https://www.cnblogs.com/WLCYSYS/p/11932157.html maven 自动下载依赖包出现 ...
- 【集合系列】- 深入浅出的分析IdentityHashMap
一.摘要 在集合系列的第一章,咱们了解到,Map 的实现类有 HashMap.LinkedHashMap.TreeMap.IdentityHashMap.WeakHashMap.Hashtable.P ...
- PL真有意思(七):数据抽象和面向对象
前言 在之前的名字.作用域那篇提到模块类型,它使程序员可以从一个给定抽象出发,通过实例化产生多个实例:再后面是类,它使程序员可以定义一族相关的抽象. 在这一篇里,我们会来看一下面向对象程序设计及其三个 ...
- <编译原理 - 函数绘图语言解释器(2)语法分析器 - python>
<编译原理 - 函数绘图语言解释器(2)语法分析器 - python> 背景 编译原理上机实现一个对函数绘图语言的解释器 - 用除C外的不同种语言实现 设计思路: 设计函数绘图语言的文法, ...
- PL真有意思(八):其它程序设计模型
前言 在之前几篇我们讨论的语法.语义.命名.类型和抽象适用于所有语言.然而我们的注意力都主要集中在命令式语言上,现在这篇来看看其它范式的语言.函数式和逻辑式语言是最主要的非命令式语言. 函数式语言 命 ...
- linux alias(命令别名)
alias:获取定义的所有命令别名 alias NAME='COMMAND':定义别名 unalias NAME:撤销别名