Mac下安装pyenv

时间:2023-03-08 22:00:26

mac 用virtualenv安装py3.6的虚拟环境报错(virtualenv -p /usr/bin/python3 env36), 解决的话需要安装zlib包, 然后去掉configure配置里面的zlib注释, 但是mac的python是pre版, 不能重新安装, 试着用pyenv

1. brew update

2. brew install pyenv

会提示卸载或者升级xcode, 按提示做(升级吧, 后面还需要xcode)

3. pyenv install 3.6.2

4.

安装完, pyenv并用pyenv安装好相应的python版本后, 切换到想用的python版本

用which python找到python地址(比如/Users/user/.pyenv/shims/python)

将pycharm解释器的地址设置为/Users/user/.pyenv/shims/python

pycharm可用了, 也可以用pip安装了

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

7.编辑.bash_profile文件

在终端中输入如下命令,进入当前用户的Home目录

cd ~
输入如下命令,打开.bash_profile文件

open .bash_profile
如不存在,则输入如下命令,创建文件

touch .bash_profile
编辑文件

open -e .bash_profile
在弹出的.bash_profile文件中新增

if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
command + s 保存文件

在终端中输入如下命令,使用更新之后的.bash_profile内容

source .bash_profile

8.指定目录切换指定版本的Python

在终端中cd到特定目录,路径名称自行修改

cd /Users/Matrix/Documents/Projects/Python/3.5.1
输入:

pyenv local <version>

pyenv local 3.5.1

9.设定全局的Python版本

在终端中输入

pyenv global <version>

pyenv global 3.5.11
不建议如此操作,可能会导致部分系统程序无法正常工作

10.检查是否切换成功

在终端中cd到特定目录,路径名称自行修改

cd /Users/Matrix/Documents/Projects/Python/3.5.1
在终端中输入:

python
会列出当前目录使用的python版本,和设置的版本一样则代表切换成功

在Pycharm中选择pyenv安装的Python版本参考:

http://www.cnblogs.com/blackmatrix/p/5603888.html

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

软件简介:

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

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

安装篇

OS X 下安装:

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

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 -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依赖

$ brew install zlib
把zlib链接到库

brew link zlib --force

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/Ubuntu下安装:

以CentOS目前最新版本7.2为例(CentOS的其他版本也适用,Ubuntu也适用,只要把yum命令改成apt-get就可以了,安装的包稍微有区别)

1. 安装依赖包

CentOS:

yum -y install git gcc make patch zlib-devel gdbm-devel openssl-devel sqlite-devel bzip2-devel readline-devel
Ubuntu(感谢网友小明在路上提醒,Ubuntu安装的包有所区别):

apt-get -y install git gcc make patch zlib1g.dev libgdbm-dev libssl-dev libsqlite3-dev libbz2-dev libreadline-dev
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. pyenv使用指南(OS X和Linux命令都通用)

pyenv versions查看系统的上安装的Python版本。 其中前面的*表示当前工作目录正在使用的版本,其中 的 system表示系统自带的 Python 版本:
$ pyenv versions
*system (set by /Users/yulongjun/.pyenv/version)
pyenv install <version>安装其他版本的Python。例如安装3.5.1和3.4.4版本:
$ pyenv install 3.5.1
$ pyenv install 3.4.4
$ pyenv versions #可以看到3个版本
*system (set by /Users/yulongjun/.pyenv/version)
3.4.4
3.5.1
pyenv local <version>切换python版本。
示例:
$ cd #到家目录
$ mkdir python35 #创建python35的工作目录
$ cd python35
$ pyenv local 3.5.1 #使当前工作目录使用python3.5.1版本
$ python -V #查看一下当前目录用python的版本,确实是3.5.1
Python3.5.1
$ pip -V #查看一下pip版本,是3.5的pip
pip 7.1.2 from /usr/local/var/pyenv/versions/3.5.1/lib/python3.5/site-packages (python 3.5)
$ cd #回到家目录
$ mkdir python34 #创建python3.4的工作目录
$ cd python34
$ pyenv local 3.4 #使当前工作目录使用python3.4.4版本
$ python -V #查看一下当前目录用python的版本,确实是3.5.1
Python 3.4.4
$ pip -V #查看一下pip版本,是3.4的pip
pip 7.1.2 from /usr/local/var/pyenv/versions/3.4.4/lib/python3.4/site-packages (python 3.4)
其他版本的工作目录创建方法类似(如果是用系统自带版本,用pyenv local system即可使当前工作目录使用系统自带的Python2.7.10,不过一般很少用系统自带的Python)

2. pyenv-virtualenv使用指南

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

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

$ pyenv virtualenv 3.5.1 venv-3.5.1
创建项目,让项目使用干净的Python3.5.1的虚拟环境:
$ mkdir myproject
$ cd myproject
$ pyenv local venv-3.5.1

pyenv-virtualenv: deactivate
pyenv-virtualenv: activate venv-3.5.1
此后,我们就会发现:只要我们进入myproject目录,就会自动激活virtualenv,退出myproject目录,就会关闭virtualenv。

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

作者:于龙君
链接:http://www.jianshu.com/p/1842a363257c
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。