Mac系统自带的Python是2.7.10,自己需要Python 3.x,此时需要在系统中安装多个Python,但又不能影响系统自带的Python,即需要实现Python的多版本共存,pyenv就是这样一个Python版本管理器 。

1.安装homebrew,通过homebrew再安装pyecharts,执行下述命令安装homebrew

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

 测试是否安装成功,执行

brew  -v

出现如下提示则成功

Homebrew 2.1.4
Homebrew/homebrew-core (git revision c58dc; last commit 2019-06-05)

如果已经安装过homebrew的可以忽略第一步。

2.安装pyenv

brew install pyenv

查看是否安装成功,执行 pyenv -v

pyenv 1.2.11

出现版本号的上述提示则表示安装成功

3.查看可安装的python版本

pyenv install --list

会列出所有可安装的python版本,有很多,如下简单列了几个

Available versions:
3.6.1
3.6.2
3.6.3
3.6.4
3.6.5
3.6.6
3.6.7
3.6.8
3.7.0
3.7-dev
3.7.1
3.7.2
3.7.3

4.安装特定版本的python

pyenv install <version>

比如安装3.6.4版本,执行下述命令

pyenv install 3.6.4 -v

5.查看pyenv安装的版本

pyenv versions

会列出所有已经安装的python版本,如下

system
* 3.6.4 (set by /Users/kumufengchun/Documents/python/.python-version)

列出了两个,一个是系统自带的,一个是刚安装的3.6.4版本

6.编辑.bash_profile

安装了之后发现使用的时候还是系统自带的版本,需要编辑.bash_profile文件

切换到根目录

cd ~

打开.bash_profile 文件,如没有该文件,新建一个,在该文件输入如下代码

if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi

保存,然后输入如下命令,使用更新之后的.bash_profile内容

source .bash_profile

7.查看当前的python 版本

pyenv version
3.6.4 (set by /Users/kumufengchun/Documents/python/.python-version)

后边括号中内容表示这个版本是由哪条途径激活的(global、local、shell)

pyenv global <version>  # 全局设置python版本为指定版本,设置全局的 Python 版本,通过将版本号写入 ~/.pyenv/version 文件的方式。
pyenv local <version> # 设置当前路径下python版本为指定版本,设置 Python 本地版本,通过将版本号写入当前目录下的 .python-version 文件的方式。
通过这种方式设置的 Python 版本优先级较 global 高。
pyenv shell <version> # 设置当前shell窗口使用的python版本为指定版本,设置面向 shell 的 Python 版本,通过设置当前 shell 的 PYENV_VERSION 环境变量的方式。
这个版本的优先级比 local 和 global 都要高。–unset 参数可以用于取消当前 shell 设定的版本。

  

8.切换版本

[root@localhost ~]# pyenv global 3.6.4
[root@localhost ~]# pyenv version
3.6.4 (set by /root/.pyenv/version)

切换到系统自带的版本

[root@localhost ~]# pyenv local system
system (set by /Users/yangjiao/Documents/python/.python-version)

  

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

pyenv rehash

10.卸载python 3.4.0版本

pyenv uninstall 3.4.0

11.设置面向程序的本地版本,通过将版本号写入当前目录下的.python-version 文件的方式

#在本地创建目录ops,执行pyenv local 3.5.3后,只有在这个目录是3.5.3的版本,别的目录使用默认的版本.

[root@localhost ~]# python -V
Python 3.5.1
[root@localhost ~]# pyenv versions
system
* 3.5.1 (set by /root/.pyenv/version)
3.5.3
[root@localhost ~]#
[root@localhost ~]# mkdir ops
[root@localhost ~]# cd ops/
[root@localhost ops]# pyenv local 3.5.3
[root@localhost ops]# python -V
Python 3.5.3
[root@localhost ops]# cd ..
[root@localhost ~]# python -V
Python 3.5.1

  

参考:https://www.cnblogs.com/saneri/p/7642316.html

Mac安装pyenv及pyenv的使用的更多相关文章

  1. Mac OS下使用pyenv管理Python版本

    问题的由来 在开发过程中,可能会遇到多个版本同时部署的情况. Mac OS自带的Python版本是2.x,自己开发需要Python3.x 系统自带的是2.6.x,开发环境是2.7.x 由于Mac机器系 ...

  2. 【Mac安装,ATX基于uiautomator2】之安装步骤

    Mac系统下安装uiaotumator2: 参考网址:<uiautomator2>以及参考github官方文档 注意:下面有坑,如果你没有下面的问题请直接跳转到 1.安装uiaotumat ...

  3. mac安装tensorflow报错

    问题:mac安装tensorflow过程中,爆出oserror:permission denied 解决方案:关闭mac的sip,然后sudo安装 关闭sip的方法:重启mac,按住command+R ...

  4. Mac 安装activate-power-mode atom

    Mac 安装activate-power-mode atom 标签: atommac 2015-12-02 14:53 308人阅读 评论(0) 收藏 举报  分类: git(2)  版权声明:本文为 ...

  5. Mac安装ctags

    Mac安装ctags mac 系统有自带的ctags,但是不支持"ctags -R"指令,需要自己在安装Exuberant Ctags 1.下载ctags 2. 安装 ./conf ...

  6. ubuntu 安装 swoole 和mac 安装swoole 扩展

    ubuntu php 安装swoole 比较容易 1. 从git下载源码 2. 下载pcre http://sourceforge.net/projects/pcre/files/pcre/8.36/ ...

  7. [Scrapy] Mac安装Scrapy

    Mac安装Scrapy Mac版本 10.11 El Captain. 前一段想在Mac上用Scrapy,各种问题.有一个不错的工具:Anaconda. 安装Anaconda 下载地址 我还是下pyt ...

  8. mac 安装 nginx 环境

    1.brew search nginx 2.brew install nginx 启动nginx ,sudo nginx ;访问localhost:8080 发现已出现nginx的欢迎页面了. 备注: ...

  9. 学习mongo系列(一) win/mac安装 解析 连接

    一.安装mongo数据库 下载链接https://www.mongodb.org/downloads, 在执行如下命令的时候事先按照目录新建如下的目录:(如果数据库安装在D盘就在D盘的根目录下建)&q ...

随机推荐

  1. 批量修改mysql的表前缀

    如何批量修改mysql的表前缀名称教程中将涉及两种方法修改,一种是批量修改(使用php脚步完成)一种是精确修改(使用sql查询语句完成). 方法一:使用sql语句修改mysql数据库表前缀名 首先我们 ...

  2. Gym - 100851L:Landscape Improved (二分+单调性)

    题意: 一个宽度为N的网格图,i上有h[i]高的方块.现在你有W个方块,问怎么放使得最终的最高点最高.   当一个格子的下方,左下方和右下方都有方块那么久可以把方块放到这个格子上.最左端和最右端不能放 ...

  3. Anthem.NET的 "Bad Response" 问题,及脚本调试技巧小结

    今天解决了一位朋友使用 Anthem.NET 遇到的问题.他的代码在 Windows XP 的开发机器上反应正常,而部署到 2003 Server 的服务器上就提示 "BADRESPONSE ...

  4. 开发框架:AdminLTE

    ylbtech-开发框架:AdminLTE 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部 1. 2. 5.返回顶部 1. https://adminlte.io 2.   6.返 ...

  5. PHP二维数组,根据多个字段来排序

    如果是最最常见的二维数组排序, 大多数情况下也只用到二维: 用php内置函数 array_multisort( )  是最简单的: <?php 假设, $arr 是一个二维数组, $arg1是取 ...

  6. linux命令-vim一般模式下光标移动

    vim 有一般模式,编辑模式,命令模式 ///////一般模式可以光标移动,复制,剪切,粘贴     编辑模式可以输入想输入的字符       命令模式刚才用到了set nu //////////// ...

  7. mysql修改查询出来的时间格式

    var d = new Date(rss.createtime); let youWant = d.getFullYear() + ) + '-' + d.getDate() + ' ' + d.ge ...

  8. 36、EST-SSR标记开发

    转载:http://fhqdddddd.blog.163.com/blog/static/1869915420124131096557/ MISA工具提供批量识别和定位简单重复序列(SSR),EST序 ...

  9. 八数码 Java实现

    参考http://blog.csdn.net/helloworld10086/article/details/41853389 package com.EightNumber.view; import ...

  10. JavaScript学习系列7 -- JavaScript中的运算符

    今天,我们来说一说JavaScript中的运算符,首先我们来讲一讲 一元运算符 JavaScript中的一元运算符有以下几种 1. delete delete 运算符主要用于删除对以前定义的对象属性或 ...