pyeny githup地址:https://github.com/pyenv/pyenv/

安装时使用pyeny提供安装工具进行安装

githup 地址:https://github.com/pyenv/pyenv-installer

安装步骤

1 安装git

  yum -y install git

2 安装python编译依赖

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

3  使用curl工具进行下载安装插件

curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

  如果在curl过程中出现curl(35)SSL connect error,是nss版本过低的原因,可能需要配置一个较新包的yum源,升级nss

  

4 下载完将提示的三句加到指定的位置   将一下三句

export PATH="/home/python/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

加到~./bash_profile中, 之后souce ~/.bash_profile,重新加载配置文件

可以看到,eval “$(pyenv init -)”初始化了pyenv,eval “$(pyenv  virtualenv-init -)初始化了virtualenv插件

5 输入pvenv, 出现以下界面,则安装成功

6常用命令

pyenv install -l 列出所有可用版本

pyenv version 当前正在使用的python版本

pyenv version 已经安装的所有python版本

pyenv install (版本号) -v, 安装指定版本并且打印详细信息 e.g. pyenv install 3.6.2 -v ,但是以上方式往往由于网速的限制不能成功, 所以可以使用离线安装的方式进行安装, python 压缩包下载地址(https://www.python.org/ftp/python),下载之后再~/.pyenv目录下面新建cache目录, 将离线包拷贝到cache目录下面, 再一次用pyenv install 3.6.2 进行离线安装

pyenv global 版本(指定当前用户python版本) ,不建议使用, 如果是root用户会改变全局python版本

pyenv shell 设置当前回话python版本

pyenv local 版本与目录绑定, 可以设置指定的目录使用什么python版本,子目录会继承上一家目录使用的python版本

7 虚拟环境

pyenv global 这个命令肯定是不建议使用的,太极端, 尤其是root用户,这个命令就当从来没有见到过,忘了它

pyenv shell 这条命令的很特殊, 只绑定当前会话,影响不大,但是用的场合感觉也不多,也就当从来没有见过它, 把它也忘了

python local 这条命令才是我们应该记下的。

pyenv virtualenv 是pyenv里面自带的一个插件 ,进入/~/.pyenv/plugins查看pyenv所有的插件,如下图

使用pyenv virtualenv 命令新建一个虚拟环境,比如 pyenv virtualenv 3.7.0 liuww

新建之后进入/~/.pyenv/versions查看, 如下图所示,新的虚拟环境已经被创建, 可以理解3.7.0的基础之上,新建一个3.7.0的分支liuwf, 我们以后所有的模块都会装在liuwf中,不会主版本3.7.0有任何影响,如果不用了, 删掉这个虚拟环境就行了,见下图,虚拟环境指向一个软连接。

新建虚拟环境之后,做个测试,

1 新建一个test目录,进入test目录

2 使用pyenv local liuwf命令将此虚拟环境绑定到此目录, 注意是虚拟环境,不是主版本

3 使用pip install ipython 安装一个模块,安装成功之后,先进入/~/.pyenv/versions/3.7.0/lib/python3.7/site-packages地址查看ipython模块有没有安装到主版本的site-packages中,如下图所示,

很明显没有

再看看有没有安装到虚拟环境中

通过以上图片, 可以看到,很明显是的,

pyenv管理版本,virtualenv管理环境, 还有个什么py东东是可以代替pip命令管理模块的, 不过对我我来说pip就够了, 暂时就不去费脑子了。

到这儿结束!!!!!!!!!!!!!!!!!!!!!




												

开发环境 pyenv的更多相关文章

  1. Python开发环境-Pyenv安装使用

    安装使用-Pyenv 简单的python版本管理:pyenv 管理python解释器 管理python版本 管理python的虚拟环境 官网:https://github.com/pyenv/pyen ...

  2. 用pyenv和virtualenv搭建单机多版本python虚拟开发环境

    作为主流开发语言, 用python 开发的程序越来越多. 方便的是大多linux系统里面都默认集成了python, 开发可以随时随地开始. 但有时候这也成为了一个短板, 比如说有时候我们需要开发和调试 ...

  3. 用pyenv 和 virtualenv 搭建单机多版本python 虚拟开发环境

    作为主流开发语言, 用python 开发的程序越来越多. 方便的是大多linux系统里面都默认集成了python, 开发可以随时随地开始. 但有时候这也成为了一个短板, 比如说有时候我们需要开发和调试 ...

  4. Linux——Django 开发环境部署(二)python版本控制器pyenv

    python版本控制器pyenv 之前的 那篇是说明了django环境的site package完全独立出来了,但是使用的python解释器还是系统的,为了继续独立出来,甚至是达到ruby的rvm的自 ...

  5. CentOS下用pyenv 和 virtualenv 搭建单机多版本python 虚拟开发环境

    安装 系统环境:CentOS 6.5 安装依赖 yum -y install gcc gcc-c++ make git patch openssl-devel zlib-devel readline- ...

  6. 使用virtualenv搭建python3开发环境

    问题描述 环境: CentOS6.5 想在此环境下使用python3进行开发,但CentOS6.5默认的python环境是2.6.6版本. 之前的做法是直接从源码安装python3,替换掉现有的开发环 ...

  7. Python虚拟开发环境

    最近,一直在不同版本的Python之间来回折腾,发现了几个Python虚拟开发环境工具,具体如下: 1. Virtualenv,可以指定开发环境的Python版本.继承已有开发环境配置,virtual ...

  8. 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!

    今年微软Build 2016大会最让开发人员兴奋的消息之一,就是在Windows上可以原生运行Linux bash,对开发人员来说,这是一个喜闻乐见的消息. 1 安装 你必须安装开发者预览版本,才能使 ...

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

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

随机推荐

  1. Mesh内存分配器的mmap小技巧

    最近看了一篇内存分配器的论文,原理很简单,但是里面的数学论证还没看懂,这次先简单写一下原理和用到的API. 内存分配器是用于封装操作系统提供的底层API,给应用程序提供动态内存的.内存不断申请释放后, ...

  2. 根据某字段将其他字段进行拼接的两种方法(SYS_CONNECT_BY_PATH及wm_concat)

    秘书姐姐说想知道她发起的所有流程,现在都到谁审批了.由于一条流程当前审批人可能有多个,故需根据单据编号(djbh)将审批人拼接到一个字段中. 说明: wfn审批历史记录表,djbh 单据编号,pk_c ...

  3. linux虚拟机时间同步

    方法来源于网上,但是经过验证是可行的. 作为linux学习的新手,开始学习时总会遇到各种各样的麻烦,每次开机发现自己的虚拟机总是与当前的时间相差几个小时到几天不等,查阅网上经验,我的做法是 1.使用y ...

  4. Node.Js http服务(websocket)

    安装node,下载地址 https://nodejs.org/en/ cmd 中 输入 node -v 安装成功可以查看版本 cmd 中 ctrl - c 可以 结束 和 启动 编辑 js 文本 va ...

  5. COOKIE和SESSION之间的区别以及用法

    一.Session简单介绍 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下).因此,在需要保存用户数据时,服务 ...

  6. node.js跨域

    先上解决方法:在函数中添加(不要用xhr请求) // 只需要关心第二个参数res.setHeader('Access-Control-Allow-Origin', 'http://localhost: ...

  7. github/gitee使用办法2

    打开自己的仓库 git pull 把内容复制过去 git add . 添加所有 查看状态 git status 提交 git commit -m 'XXX' 最后push git push 如果内容本 ...

  8. 删除排序数组中的重复项-leetcode-26

    public:    int removeDuplicates(vector<int>& nums) {        int size=nums.size();        i ...

  9. 图片懒加载 echo.js

    (function (root, factory) { if (typeof define === 'function' && define.amd) { define(functio ...

  10. 0. General-purpose tools (通用工具 8个)

    http://en.wikipedia.org/wiki/Netcat这个简单的实用程序通过TCP或UDP网络连接读写数据. 它被设计为一个可靠的后端工具,可以直接或轻松地使用其他程序和脚本驱动. 同 ...