博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在macOS上通过pyenv安装和切换多版本Python
阅读量:6358 次
发布时间:2019-06-23

本文共 2957 字,大约阅读时间需要 9 分钟。

1. 安装homebrew

官网 http://brew.sh/index_zh-cn.html

打开终端,在终端中粘贴如下脚本

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

测试是否安装成功

在终端中输入 

brew -v

出现类似提示,即代表安装成功

Homebrew 0.9.5 (git revision 1021; last commit 2016-03-30)

 

2.安装pyenv

在终端中输入

brew install pyenv

验证是否安装成功 

pyenv -v

 出现类似结果,即代表安装成功

pyenv 20150310

 

3.查看可安装的Python版本

在终端中输入  

pyenv install --list

 会列出可安装的Python版本号

 

4.安装特定版本的Python

在终端中输入 

pyenv install 
 

安装对应的Python版本,如: 

pyenv install 2.7.11

 

5.异常处理

如出现如下异常:

Installing Python-2.7.11...ERROR: The Python zlib extension was not compiled. Missing the zlib?Please consult to the Wiki page to fix the problem.https://github.com/yyuu/pyenv/wiki/Common-build-problemsBUILD FAILED (OS X 10.11.5 using python-build 20160130)Inspect or clean up the working tree at /var/folders/fb/7406jr3s60z_tdpxxqm2s9hh0000gn/T/python-build.20160616162746.48644Results logged to /var/folders/fb/7406jr3s60z_tdpxxqm2s9hh0000gn/T/python-build.20160616162746.48644.logLast 10 log lines:rm -f /Users/Matrix/.pyenv/versions/2.7.11/share/man/man1/python.1(cd /Users/Matrix/.pyenv/versions/2.7.11/share/man/man1; ln -s python2.1 python.1)if test "xno" != "xno"  ; then \        case no in \            upgrade) ensurepip="--upgrade" ;; \            install|*) ensurepip="" ;; \        esac; \         ./python.exe -E -m ensurepip \            $ensurepip --root=/ ; \    fiyujingyao:2.7.11 Matrix$ CFLAGS="-I$(brew --prefix openssl)/include" LDFLAGS="-L$(brew --prefix openssl)/lib" pyenv install 3.6-DevCloning https://hg.python.org/cpython...error: please install `mercurial` and try again

 则在终端中输入,注意替换如下代码的版本号

CFLAGS="-I$(brew --prefix openssl)/include -I$(xcrun --show-sdk-path)/usr/include" \LDFLAGS="-L$(brew --prefix openssl)/lib" \pyenv install -v 2.7.11

 在EI Capitan实测有效

资料来源:https://github.com/yyuu/pyenv/issues/448

如有其他异常可以参考 https://github.com/yyuu/pyenv/wiki/Common-build-problems 

如果出现如下异常:

ImportError: No module named 'pyexpat'

请更新pyenv版本:brew upgrade pyenv

实测从1.0.2_1 更新直 1.2.3 后问题解决,同时安装python时,也不再需要上面的命令,可以直接通过pyenv install <version> 直接安装

 6.查看pyenv已安装的Python版本

pyenv versions

 在终端中会列出已安装的Python版本,如

2.7.11

3.5.1

 

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 

pyenv local 3.5.1

 

9.设定全局的Python版本

在终端中输入

pyenv global 

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 

转载于:https://www.cnblogs.com/blackmatrix/p/5591341.html

你可能感兴趣的文章
百度亮相iDASH,推动隐私保护在人类基因组分析领域的应用
查看>>
Python「八宗罪」
查看>>
你的隐私还安全吗?社交网络中浏览历史的去匿名化
查看>>
NeurIPS 2018|如何用循环关系网络解决数独类关系推理任务?
查看>>
Windows 10 份额突破 40%,Windows 7 连跌四月终回升
查看>>
怎么把Maven项目转为动态Web项目?
查看>>
Arm发布Cortex-A76AE自动驾驶芯片架构,宣示车载系统市场主权
查看>>
Hibernate入门教程
查看>>
Java支付宝扫码支付[新]
查看>>
SpringMVC 拦截器 筛选
查看>>
第十八章:MVVM(八)
查看>>
点击表头切换升降序排序方式
查看>>
第26天,Django之include本质
查看>>
Java中静态变量和实例变量的区别
查看>>
秋名山老司机(详解)——bugku
查看>>
RED | Robot Framework集成开发环境
查看>>
育碧同 Mozilla 联手开发 AI 代码助手
查看>>
【实用】面对枯燥的源码,如何才能看得下去?
查看>>
智库说 | 徐远:数字时代的城市潜力
查看>>
《JSP极简教程》jsp c:forEach用法
查看>>