安装步骤

  1. 安装 xcode-select 以及 homebrew(前者在安装 git 的时候装过,后者 mac 开发必备无需解释)
  2. 安装 pyenv brew install pyenv,用 pyenv -v 验证是否安装成功
  3. 添加如下几行 到相应 shell 的配置文件(比如我的 ~/.zshrc 文件),如果不生效,用 source 命令 source ~/.zshrc

    export PYENV_ROOT="$HOME/.pyenv"
    export PATH="$PYENV_ROOT/bin:$PATH"
    eval "$(pyenv init -)"

常用命令

pyenv install 2.7.13
pyenv uninstall 2.7.13
pyenv install --list // 查看可安装版本
pyenv global 2.7.13 // 全局应用 2.7.13
pyenv local 2.7.13 // 当前文件夹应用 2.7.13
pyenv version // 查看当前应用的版本
pyenv versions // 查看当前可用版本(本机已安装)
python -V // 执行当前目录下的 python 文件时将会使用的 python 版本号

然而...

这样一来,在命令行中就可以随意切换 python 版本号运行 python 文件了,然而我最熟悉的运行 python 的方式是在 sublime 中 command+b,这特么就尴尬了,在命令行中 python -V 的版本号可以随意切换,但是 command+b 使用的 python 执行路径却是不变的。

因为系统的 python 版本是 2.7.x,显然要与时俱进学习都已经出来十年的 3.x,在 sublime 的 build system 选项中新建个新的文件,填入以下内容:

{"cmd": ["/usr/local/bin/python3", "$file"],"selector": "source.py"}

cmd 的第一个参数就是我的 python3 的路径,可以用 which python3 获取。该 py3 是我通过 brew 安装的,也可以用 pyenv 安装的 py3,不过可能会有坑,比如你在某个文件夹下用 pyenv local 命令安装了 py2,然后 sublime 中用了 pyenv global 的 py3 路径,因为 local 作用大于 global,local 文件夹下的文件 command+b 可能就会报错,FYI。所以还是用 brew 安装的全局 py3 吧~

python 版本管理工具 pyenv 使用备忘的更多相关文章

  1. python版本管理工具pyenv和包管理工具pipenv

    一.pyenv版本管理工具 pyenv是一个python版本管理工具,可以实现轻松切换多个python版本 它可根据每个用户更改全局python版本,也可以为每个项目指定python版本,还可以管理v ...

  2. 腾讯云服务器ubuntu16.04系统下安装Python版本管理工具pyenv

    一. 系统环境   腾讯云提供的系统是ubuntu 16.04 LTS,系统默认的Python版本是2.7.12,我想要安装3.6和其他的版本.   比较方便的是腾讯云已经默认安装好了git和curl ...

  3. Ubuntu安装Python版本管理工具pyenv

    gyf@gyf-VirtualBox:~$ git clone https://github.com/yyuu/pyenv.git ~/.pyenvCloning into '/home/gyf/.p ...

  4. 你应该学会的Python多版本管理工具Pyenv

    目录 Pyenv 简介 安装pyenv 通过pyenv安装python各种发行版 pyenv命令 多版本Python的管理 Pyenv常见问题Wiki Pyenv 简介 首先,该工具是在类linux环 ...

  5. Ubuntu中python多版本管理工具-pyenv

    ubuntu系统版本:16.04 # lsb_release -aNo LSB modules are available.Distributor ID: UbuntuDescription: Ubu ...

  6. python 工具链 多版本管理工具 pyenv

    理解Shims pyenv会在系统的PATH最前面插入一个shims目录: $(pyenv root)/shims:/usr/local/bin:/usr/bin:/bin 通过一个rehashing ...

  7. 抓包工具tshark使用备忘

         抓包命令行工具tshark可以用于自定制,相比GUI工具可以实现一些自动化,譬如把某些关注的数据抓起下来存放到文本中,然后再分析输出.      demo: std::string deco ...

  8. python常用函数和方法 - 备忘

    语法语句篇 除法运算(精确运算和截断运算) 在python2中,除法运算通常是截断除法.什么是截断除法: >>> 3/4 0 # 自动忽略小数项 要是想 得到正确结果 怎么办呢? m ...

  9. Python全栈2期 备忘

    http://www.cnblogs.com/linhaifeng/ http://www.cnblogs.com/alex3714/ http://www.cnblogs.com/wupeiqi/ ...

随机推荐

  1. 使用MyBatis缓存

    (1).为什么需要使用缓存:: MyBatis是一个持久层(数据库层)映射框架,在所有访问数据库的操作中,无疑数据查询是最耗费数据库资源的操作了,因为你一次可能需要查询成千上百万条记录(如果你不加限制 ...

  2. git学习笔记5-撤销操作

    git撤销有四种情况,一是没有commit,想恢复所有文件:二是没有commit,想恢复全部文件:三是已经commit了,想恢复某个版本:四是本地已经提交了,想从远程库恢复. 1. 没有commit, ...

  3. Aop介绍及几种实现方式

    Aop介绍      我们先看一下wiki百科的介绍     Traditional software development focuses on decomposing systems into ...

  4. 【java设计模式】【创建模式Creational Pattern】抽象工厂模式Abstract Factory Pattern

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW0AAABvCAIAAACo3AbKAAALvUlEQVR4nO1dUa7cOA7U/c+zwJxkf4

  5. iOS Block的简单使用以及__block 和static修饰变量

    简单的代码总结,不足之处多多指教. //简单的使用 -(void)blockOne{ ; int(^BlockOne)(int) = ^(int num2) { return number*num2; ...

  6. Python2/3的中、英文字符编码与解码输出: UnicodeDecodeError: 'ascii' codec can't decode/encode

    摘要:Python中文虐我千百遍,我待Python如初恋.本文主要介绍在Python2/3交互模式下,通过对中文.英文的处理输出,理解Python的字符编码与解码问题(以点破面). 前言:字符串的编码 ...

  7. 设计模式——外观模式(Facade)

    1. 概述     外观模式,我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性. 例子1:一个电源总开关可以控制四盏灯 ...

  8. 关于PLC

    学电气的一方面是单片机,一方面是PLC,,,,常常看到说选择比努力更重要,,单片机都很熟悉了,我就来介绍一下PLC..... 然后呢我先吹吹牛,,,目的是让大家相信我介绍的PLC绝对是亲身体验.... ...

  9. 为什么要学ADO.NET。。。什么是ADO.NET。。。

    之前学的 •只能在查询分析器里查看数据,操作数据,我们不能让普通用户去学sql,所以我们搭建一个界面(Web Winform)让用户方便的操作数据库中的数据.   •ADO.NET就是一组类库,这组类 ...

  10. Windows Server服务器日常管理技巧

    高效管理服务器一直离不开有效的服务器管理技巧,尽管你已经掌握了不少这方面的技巧,但服务器还有许许多多的技巧在等着你的总结,等着你的挖掘;这不,下面的一些服务器管理窍门就是笔者在最近的工作中总结出来的, ...