原文:http://www.magedu.com/73921.html

pyenv,是一款特别好用的Python版本管理器,程序员可以建立不同的目录,在不同的目录里分别运行不同版本的Python, 并且互不影响,安装的包也互不影响。github项目地址:https://github.com/yyuu/pyenv

1.1 Python安装与版本控制

pyenv-virtualenv, 是pyenv的一个plugin(插件),可以用来创建基于不同Python版本的干净的虚拟环境。github项目地址:https://github.com/yyuu/pyenv-virtualenv

1.1.1 pyenv安装详解

——OS X 下安装pyenv:

以OS X目前最新版本10.11.6为例(其他版本也适用)。

1. 安装brew

我们可以用brew命令来更新OSX系统,brew命令类似于RHEL的yum和ubuntu的apt-get命令,Homebrew的官网是这样说的:

homebrew – The missing package manager for OS X

OSX没有包管理器,所以我们安装brew来管理,登陆Homebrew网站,找到ruby代码来安装brew:

ruby$ ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
如果想升级新的homebrew,可以用命令brew update
如果想安装软件包,可以用命令brew install XXXXX,XXXX是软件包的名称
如果想更新软件包,可以用brew upgrade [XXXX],XXXX是软件包的名字,如 brew upgrade pyenv。如果省略不写,就是更新所有可更新的软件包。

2. 安装zlib和sqlite3

$ brew install zlib
$ brew install sqlite3
强制添加链接

brew link –force zlib
brew link –force sqlite3

3. 安装pyenv

安装好brew后,就可以用brew来安装pyenv的最新版本了,而且会自动下载依赖包:

$ brew install pyenv #brew安装pyenv
按照安装完后Caveats的提示要添加两条环境变量到~/.bash_profile文件里(如果没有需要新建,OS X默认是没有这个文件的):

export PYENV_ROOT=/usr/local/var/pyenv
if which pyenv > /dev/null; then eval “$(pyenv init -)”; fi
需要使环境变量生效,
运行命令exec “$SHELL”。

升级:brew upgrade pyenv

卸载:brew uninstall pyenv,然后删除之前填在~/.bash_profile文件里那两行。

4. 安装pyenv-virtualenv

$ brew install pyenv-virtualenv
按照安装完后Caveats的提示要添加两条环境变量到~/.bash_profile文件里:

if which pyenv-virtualenv-init > /dev/null; then eval “$(pyenv virtualenv-init -)”; fi
需要使环境变量生效,
运行命令exec “$SHELL”,如果还没有效果,就退出终端,重新打开。

——CentOS下安装:

以CentOS目前最新版本7.2为例(CentOS的其他版本也适用,其他都一样)
ubuntu下安装请点击这里

1. 安装依赖包

yum -y install git gcc make patch zlib-devel gdbm-devel openssl-devel sqlite-devel bzip2-devel readline-devel mysql-devel gcc-devel python-devel

2. 安装pyenv(pyenv-virtualenv插件会自动安装)

安装(下面一条命令可以把pyenv和pyenv-virtualenv插件都装上):

curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
设置环境变量:

在~/.bash_profile环境变量配置加入下面三行

export PATH=”~/.pyenv/bin:$PATH”
eval “$(pyenv init -)”
eval “$(pyenv virtualenv-init -)”
升级:可以用命令pyenv update。

卸载:直接删除目录rm -rf ~/.pyenv,然后把~/.bash_profile环境变量配置中的三行删掉

需要使环境变量生效,
运行命令exec “$SHELL”,如果还没有效果,就退出终端,重新打开。

1.1.2 软件使用指南

pyenv使用指南(OS X和Linux命令都通用)

pyenv install –list
查看可以安装的版本:

$ pyenv install –list
# `…`表示省略

2.7.13

3.6.1

pyenv versions查看系统的上安装的Python版本。 其中前面的*表示当前工作目录正在使用的版本,其中 的 system表示系统自带的 Python 版本:

$ pyenv versions
*system (set by /Users/yulongjun/.pyenv/version)
pyenv install <version>安装其他版本的Python。我们以安装2.7.13和安装3.6.1版本:

$ pyenv install 3.6.1
$ pyenv install 2.7.13
$ pyenv versions #可以看到2个版本
*system (set by /Users/yulongjun/.pyenv/version)
2.7.13
3.6.1
pyenv local <version>切换python版本。
示例:

$ cd #到家目录
$ mkdir python3.6 #创建python3.6.1的工作目录
$ cd python3.6
$ pyenv local 3.6.1 #使当前工作目录使用python3.6.1版本
$ python -V #查看一下当前目录用python的版本,确实是3.6.1
Python3..6.1
$ pip -V #查看一下pip版本,是3.6.1的pip
pip 8.1.1 from /root/.pyenv/versions/3.6.1/lib/python3.6.1/site-packages (python 3.6.1)
$ cd #回到家目录
$ mkdir python2.7.13 #创建python2.7.13的工作目录
$ cd python2.7.13 
$ pyenv local 2.7.13 #使当前工作目录使用python2.7.13版本
$ python -V #查看一下当前目录用python的版本,确实是2.7.13
Python 2.7.13
$ pip -V #查看一下pip版本,是2.7.13的pip
pip 8.1.1 from /root/.pyenv/versions/2.7.13/lib/python2.7.13 site-packages (python2.7.13 )
其他版本的工作目录创建方法类似(如果是用系统自带版本,用pyenv local system即可使当前工作目录使用系统自带的Python版本,不过一般很少用系统自带的Python)

——pyenv-virtualenv使用指南

pyenv-virtualenv是用来创建一个干净的虚拟Python环境的命令,通常在创建干净的新项目时候使用。使用方法如下:

1.创建虚拟环境–pyenv virtualenv 版本号 虚拟环境名。

$ pyenv virtualenv 3.6.1 venv-3.6.1
创建项目,让项目使用干净的Python3.6.1的虚拟环境:

[root@localhost]$ mkdir Learning-Python3.6.1
[root@localhost]$ cd Learning-Python3.6.1/
[root@localhost]$ pyenv local venv-3.6.1
(venv-3.6.1) [root@localhost]$ cd ..
[root@localhost]$ cd Learning-Python3.6.1/
(venv-3.6.1) [root@localhost]$
我们会发现:只要我们进入Learning-Python3目录,就会自动激活virtualenv,退出Learning-Python3目录,就会关闭virtualenv。

如果要关闭自动激活,可以运行命令pyenv deactivate,要重新启用的话,运行pyenv activate 虚拟环境名。

因为pyenv 安装的python版本的时候 要等很久,我们可以先在官网下载对应的版本之后,移动到对应的pyenv的目录里面就可以快速安装了
首先 mkdir -p /root/.pyenv/cache/
把官网下载好的python版本移动到这个目录,

4.配置pip国内源
* mkdir /root/.pip
* vim /root/.pip/pip.conf

[global]
index-url = http://mirrors.aliyun.com/pypi/simple/

[install]
trusted-host=mirrors.aliyun.com

5. 安装jupyter
● pip install jupyter
● 启动 jupyter notebook –ip=0.0.0.0 –port 8000 –allow-root –no-browser

(转)Python全能自动化开发环境软件之pyenv的安装说明的更多相关文章

  1. 构建一个基本的前端自动化开发环境 —— 基于 Gulp 的前端集成解决方案(四)

    通过前面几节的准备工作,对于 npm / node / gulp 应该已经有了基本的认识,本节主要介绍如何构建一个基本的前端自动化开发环境. 下面将逐步构建一个可以自动编译 sass 文件.压缩 ja ...

  2. 小白学习Python之路---开发环境的搭建

    本节内容 1.Python的介绍 2.发展史 3.安装Python 4.搭建开发环境 5.Hello World程序 一.Python的介绍 Python的创始人为荷兰人吉多·范罗苏姆(Guido v ...

  3. 【Python基础学习一】在OSX系统下搭建Python语言集成开发环境 附激活码

    Python是一门简单易学,功能强大的编程语言.它具有高效的高级数据结构和简单而有效的面向对象编程方法.Python优雅的语法和动态类型以及其解释性的性质,使它在许多领域和大多数平台成为编写脚本和快速 ...

  4. python爬虫入门-开发环境与小例子

    python爬虫入门 开发环境 ubuntu 16.04 sublime pycharm requests库 requests库安装: sudo pip install requests 第一个例子 ...

  5. Win10构建Python全栈开发环境With WSL

    目录 Win10构建Python全栈开发环境With WSL 启动WSL 总结 对<Dev on Windows with WSL>的补充 Win10构建Python全栈开发环境With ...

  6. odoo开发环境搭建(三):安装odoo依赖的python包

    odoo开发环境搭建(三):安装odoo依赖的python包 http://www.cnblogs.com/jlzhou/p/5940815.html

  7. Django Python MySQL Linux 开发环境搭建

    Django Python MySQL Linux 开发环境搭建 1.安装Python 进行Python开发,首先必须安装python,对于linux 或者Mac 用户,python已经预装. 在命令 ...

  8. 为eclipse安装python、shell开发环境和SVN插件

    http://www.crazyant.net/1185.html 为eclipse安装python.shell开发环境和SVN插件 2013/08/27 by Crazyant 暂无评论 eclip ...

  9. Python For Mac 开发环境安装 以及问题记录

    Python For Mac 开发环境安装记录 把自己安装的过程记录一下,亲测可用 1.Python3环境安装(转载http://www.cnblogs.com/meng1314-shuai/p/90 ...

随机推荐

  1. BeanUtils.populate的方法的作用

    BeanUtils位于org.apache.commons.beanutils.BeanUtils下面,其方法populate的作用解释如下: 完整方法: BeanUtils.populate( Ob ...

  2. C++之类和对象的使用(一)

    对象的初始化 在声明类时直接对数据成员初始化是错误的!下面的例子时错误的!! class Time{ hour =; minitu=; sec=; } //因为类并不是一个实体,而是一种抽象类型,并不 ...

  3. MAC安装远程工具Securecrt的破解方式(详细有图)

    想要实现mac的远程连接功能,本来想使用终端的,但是终端的很多功能是欠佳的,所以决定安装一款,像windows的xshell一样好的软件,所以选择了这款Securecrt. 首先准备两个东西,一个是S ...

  4. HDU 3247 Resource Archiver (AC自动机+BFS+状压DP)

    题意:给定 n 个文本串,m个病毒串,文本串重叠部分可以合并,但合并后不能含有病毒串,问所有文本串合并后最短多长. 析:先把所有的文本串和病毒都插入到AC自动机上,不过标记不一样,可以给病毒标记-1, ...

  5. AngularJS标准Web业务流程开发框架-4.AngularJS四大模块之一:Controller

    一.Controller的创建 angular.controller("name",funtion($scope){ }) 1.name:控制器的名称(建议参考Java包的命名规范 ...

  6. day3之函数的初始及进阶

    函数初始 函数的定义与调用 ''' def 函数名 (参数): 函数体 函数名:设定与变量相同 执行函数: 函数名() ''' 函数的返回值 # 函数返回值 return ''' 1.遇到return ...

  7. github/gitlab添加多个ssh key

    系统:macOS X 由于公司的代码管理放在了gitlab.com上,所以添加了一个ssh key, 生成ssh key的代码如下: 1.$ ssh-keygen -t rsa -C “yourema ...

  8. android DDMS中的内存监测工具Heap

    DDMS中自带的Heap工具可以显示出当前堆内存的情况,分配内存.剩余的内存等信息. 首先是进入DDMS,运行应用,在DDMS的左边区域选中应用的包名,然后点击上方的update heap图标. 点击 ...

  9. 虚拟化之Xen简介

    1>相关知识简介: 1>常用的磁盘IO调度器: CFQ:完全公平队列算法: deadline:最后期限算法: anticipatory:顺序读写队列算法/预期算法: NOOP:no  op ...

  10. EBS Archiving and Purging: You Know you need to

    A number of trends in the IT industry have contributed to the increasing size of ERP application dat ...