Python pyenv

一、简介

一般在操作系统中我们会安装多个Python版本,所以在进行Python版本切换时会比较麻烦,pyenv就提供了一种简单的方式,能简易地在多个Python版本中进行切换的工具,它简单而优雅。pyenv有以下功能:

1)进行全局的Python版本切换
2)为单个项目提供对应的Python版本
3)使用环境变量能让你重写Python版本
4)能在同一时间在不同版本间进行命令搜索

pyenv拥有以下特点:

1)只依赖Python本身
2)将目录添加进$PATH即可使用
3)能够进行virtualenv管理

 

二、安装

介绍以下两种方式:

1)方式1:

第一步:在自己的用户目录下执行

curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
第二步:在上述运行完之后通常在命令行中会出现下述提示,将之添加到~/.bashrc中, source ~/.bashrc使之生效,这样我们的pyenv算是初步安装成功了。 

#Seems you still have not added 'pyenv' to the load path:
export PYENV_ROOT="${HOME}/.pyenv"
if [ -d "${PYENV_ROOT}" ]; thenexport PATH="${PYENV_ROOT}/bin:${PATH}"eval "$(pyenv init -)"
fi

第三步:在CentOS/RHEL/Fedora下,安装Python时需要首先安装其依赖的其他软件包,执行如下脚本解决依赖问题:

http://files.cnblogs.com/files/274914765qq/pyenv_resolve_dependent.sh

2)方式2:

第一步:依次执行如下指令
wget http://files.cnblogs.com/files/274914765qq/pyenv-20150113.1.tar.gz
tar -zxvf pyenv-20150113.1.tar.gz
cd pyenv-20150113.1
python setup.py install

第二步:在上述运行完之后通常在命令行中会出现下述提示,将之添加到~/.bashrc中, source ~/.bashrc使之生效,这样我们的pyenv算是初步安装成功了。

# Load pyenv automatically by adding
# the following to your profile:export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

2_thumb1

第三步:在CentOS/RHEL/Fedora下,安装Python时需要首先安装其依赖的其他软件包,执行如下脚本解决依赖问题:

http://files.cnblogs.com/files/274914765qq/pyenv_resolve_dependent.sh

 

三、使用实例

1)显示当前使用的Python

pyenv versions

2)显示当前Python的安裝路径                    

pyenv which python
3)设置默认的Python版本            
pyenv global

4)在当前路径创建一个.python-version,以后进入这个目录自动切换为该版本          

pyenv local

5)在当前shell的session中启用某个Python版本,优先级高于global,local           

pyenv shell

6)安装指定Python版本

pyenv install -v 2.7.3

7)卸载指定Python 版本

pyenv uninstall -v 2.7.3

8)安装完成之后需要对数据库进行更新

pyenv rehash

 

参考:https://github.com/yyuu/pyenv-installer
     http://seisman.info/python-pyenv.html
     http://my.oschina.net/lionets/blog/267469
     http://seisman.info/python-pyenv.html

转载于:https://www.cnblogs.com/274914765qq/p/5153632.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/396879.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python中add_Python add()函数是如何使用呢?

Python里经常会出现一些不太常见的函数,大家在遇到这类函数时候,是怎么做的呢?没有概念,直接过,还是会去查询下呢?相信大部分人都不会去查询,因为查询的内容太复杂了,所以&#xff0…

JavaScript的DOM编程总结

DOM(文档对象模型), 与语言无关, 用于操作XML(在Web中)和HTML(在浏览器在)文档的应用程序接口。访问DOM次数越多, 速度越慢, 费用也就越高。 最小化DOM访问次数,尽可能在JavaScript端处理。 如果…

2017.1.20活动

1、根据教程用倾斜开关控制了一个小灯的亮灭(倾斜到达一定角度亮或到达一定角度灭),后自己尝试了利用倾斜开关控制两个小灯,即一开始绿灯亮红灯灭,到达一定角度后,绿灯亮起红灯灭掉,附代码&…

oracle 增加间隔分区,oracle分区表之间隔分区(oracle 11g) - 漫兮网

范围分区允许用户根据分区键列值的范围创建分区。下面是一个按范围分区表的示例:create table sales6(sales_id number,sales_dt date)partition by range (sales_dt)(partition p0701 values less than (to_date(2007-02-01,yyyy-mm-dd)),partition p0702 values l…

c++ try catch语句_再问你一遍,你真的了解try..catch(finally)吗???

定义首先来看下 MDN 的定义:The try...catch statement marks a block of statements to try and specifies a response should an exception be thrown.try...catch语句标记要执行的语句,并指定一个当有异常抛出时候的响应简短的一句的确描述了try...ca…

lamp架构,搭建一个网络平台

首先更改主机名和 hosts 安装软件包,设置启动服务 设置数据库密码 上传discuz论坛包 将discuz注册的用户名写在mariadb数据库中 解压discuz包 unzip discuz包 -d /var/www/html cd到upload下 cp -rf * /var/www/html 进入数据库 mysql -uroot -p create database…

MyEclipse中SVN的使用方法

1、 加载插件 svn-myeclipse插件site-1.10.2.zip,解压缩后,将文件夹下的所有文件拷贝到MyEclipse安装包下的MyEclipse 8.5\dropins文件夹下,然后重新打开myeclipse,会弹出一个报错窗口,不要管它,关闭后&…

oracle数据泵导出csv文件,数据泵expdp导出遇到ORA-01555和ORA-22924问题的分析和处理...

使用数据泵导出数据库数据时,发现如下错误提示:ORA-31693: Table data object "CAMS_CORE"."BP_EXCEPTION_LOG" failed to load/unload and is being skipped due to error:ORA-02354: error in exporting/importing dataORA-01555:…

Go程序开发---Go环境配置:CentOS6.5+Go1.8标准包安装

1.Go安装 1.1Go的三种安装方式 Go有多种安装方式,可以选择自己习惯的方式进行,这里介绍三种安装方式: 1)Go源码安装 2)Go标准包安装 3)第三方工具安装 这里主要介绍下Go标准包在CentOS6.5系统中的安装方式 …

python矩阵乘法_鱼书——第一章 Python入门

one 第一章1.1 Python是什么Python是一个简单、易读、易记的编程语言,而且是开源的,可以免费地自由使用。Python可以用类似英语的语法编写程序,编译起来也不费力,因此我们可以很轻松地使用Python。特别是对首次接触编程的人士来说…

深入浅出面向对象分析与设计

深入浅出面向对象分析与设计书籍 下载位置:http://pan.baidu.com/s/1o7gmmuu转载于:https://www.cnblogs.com/wlming/p/5160140.html

[SHOI2002]百事世界杯之旅

题目:“……在2002年6月之前购买的百事任何饮料的瓶盖上都会有一个百事球星的名字。只要凑齐所有百事球星的名字,就可参加百事世界杯之旅的抽奖活动,获得球星背包,随声听,更克赴日韩观看世界杯。还不赶快行动&#xff…

Oracle adviser,Oracle10g SQL tune adviser

Oracle10g SQL tune adviser简单介绍本文简单介绍下SQL Tuning Adviser的配置使用方法和一些相关知识点,如果了解SQL Tuning Adviser详细信息,参看Oracle联机文档。本文对分析结果没有详细分析。一、自动SQL Tuning简单介绍:1、优化模式&…

考托福

todo 香港的博士 转载于:https://www.cnblogs.com/dunfentiao/p/5164028.html

keepalived vip ping不通_【干货分享】OpenStack LVS负载均衡为什么不通?

背景介绍OpenStack环境Neutron 的安全组会向虚拟机默认添加 anti-spoof 的规则,将保证虚拟机只能发出/接收以本机Port为原地址或目的地址(IP、MAC)的流量,提高了云的安全性。但是LVS等需要绑定VIP的场景,默认流量是被拦截的。需要…

Docker安装ssh,supervisor等基础工具

2019独角兽企业重金招聘Python工程师标准>>> Docker安装ssh,supervisor等基础工具 需要提前下载好官方的ubuntu镜像,我这里使用的是ubuntu:14.04版本,这里安装了一些基础的工具ssh,curl,wget,vi…

中南大学 oracle试卷,数据库原理期末复习(中南大学)数据库原理、技术及应用2.ppt...

2014 春季 信息11,12 DB P,T&A-张祖平 数据库原理、技术及应用 张祖平/Zhang Zuping 电子信息工程系 School of Information Science and Engineering,Central South University , zpzhangmail.csu.edu.cn 本章小结 关系模型中的相关概念 关系(集合),性质&#…

Pandas时间差(Timedelta)

时间差(Timedelta)是时间上的差异,以不同的单位来表示。例如:日,小时,分钟,秒。它们可以是正值,也可以是负值。可以使用各种参数创建Timedelta对象,如下所示 - 字符串 通过传递字符串&#xff0…

nginx集群_windows环境下搭建简单Nginx+Tomcat集群

通俗点将,负载均衡就是因为访问流量太大,导致项目访问不流畅、甚至宕掉,所以通过一种分流的方式来缓解这种情况。一、 工具nginx-1.8.0apache-tomcat-6.0.33二、 目标实现高性能负载均衡的Tomcat集群:三、 步骤1、首先下载Nginx&a…

颜色传感器TCS230及颜色识别电路(转)

摘要 TCS230是美国TAOS公司生产的一种可编程彩色光到频率的传感器。该传感器具有分辨率高、可编程的颜色选择与输出定标、单电源供电等特点;输出为数字量,可直接与微处理器连接。文中主要介绍TCS230的原理和应用,以及色光和白平衡的知识&…