2016.01.06 21:02* 字数 82 阅读 24416评论 11喜欢 12 Title: 使用 pyenv 可以在一个系统中安装多个python版本 Date: 2016-01-06 Author...: ColinLiu Category: Python tags: python,pyenv 使用 pyenv 可以在一个系统中安装多个python版本 Installl related yum install...# 创建新的环境,位于 ~/.pyenv/versions/ $ pyenv virtualenv 2.7.1 env271 # 切换到新的环境 $ pyenv activate env271 #.../pelican flask_py351 pelican # 查看当前处于激活状态的版本,括号中内容表示这个版本是由哪条途径激活的(global、local、shell) $ pyenv version...3.5.1 (set by /root/.pyenv/version) # 使用 python-build(一个插件) 安装一个 Python 版本,到 $PYENV_ROOT/versions 路径下
这些杂七杂八的问题让初学者很烦躁,pyenv正是解决此类问题的神器。 简单地说,pyenv是python的版本管理工具。...init -)" 根据提示,将初始化指令追加到~/.zshrc中(不同的shell配置文件不同) ☁ ~ echo 'eval "$(pyenv init -)"' >> ~/.zshrc 查看有哪些可安装的版本...>>> 删除版本 ☁ ~ pyenv uninstall 3.6.6 pyenv-virtualenv pyenv已经很强大了,但还不够,如果我们希望每个项目的依赖都是独立的,而不是全部安装在同一版本的...python中 就需要用到 pyenv-virtualenv pyenv-virtualenv是pyenv的一个插件,用于创建指定版本的虚拟环境, github源码 安装 ☁ ~ brew install...强烈推荐在开发中结合两者来使用,让各个项目独立运行,不会互相干扰。
一 前言 开发不同的项目的时候有可能产生安装不同python 版本的需求,那么如何管理多个python版本呢?有大神开发了工具 --pyenv 来解决多版本管理的问题。...本文主要讲述基于mac os环境的安装使用,其他*nix系统使用方式类似 安装 1 brew install brew install pyenv 2 基于git 源码的安装 git clone...验证是否安装成功 ➜ ~ pyenv -v pyenv 1.2.1-1-g6f27c91 二 使用 2.1 常用指令集: 查看可安装的Python版本 pyenv install --list 安装特定版本的...Python pyenv install pyenv install 3.6.1 查看pyenv已安装的Python版本,如果装了其他版本那么会显示多个 ➜ ~ pyenv versions...pyenv-virtualenv是pyenv的一个plugin,可以用来创建基于不同Python版本的虚拟环境。
Java上的maven、gradle,NodeJS的npm这些工具就不存在这个问题,它们有一个或多个的专门的依赖文件来管理这些包。...Python必须是系统已经安装的、可以在环境变量中搜索到的版本号,如果指定未安装的版本,会提示错误。...自动安装Python pipenv只能搜索系统中已经安装的Python版本,对于未安装的版本,会提示错误。...这样一来,原来的工作流程是:用pyenv安装某个Python->用virtualenv或venv创建虚拟环境->用pip从requirements.txt中安装包->将来可能还要更新包。...,在Linux中可能没啥,但是在Windows下可能有人不喜欢把这些东西放在用户目录。
安装python3 网上有使用pyenv方式安装python3以实现与系统的python版本共存而不冲突,个人觉得其实没有必要,我们其实可以单独运行python3。...brew install python3 安装好后可以尝试输入python3看是否能进入python3命令行,可以看到我这里安装的python3的版本是3.5.2 $ python3 Python 3.5.2...,在这个环境里你使用的python版本以及安装的依赖都不会影响环境外的项目。...├── lib │ └── python2.7 //所有的新包会被存在这 │ ├── distutils │ ├── encodings │ ├──...项目 使用--python参数指定python版本创建一个基于python3的虚拟环境 virtualenv py3_test --python=3.5 检查环境中python版本,可以发现虚拟环境中的
Python2和Python3之间存在较大的差异,并且由于各种原因导致Python2和Python3长期共存。...我们在使用的时候,可能会遇到不同的Python版本问题或者是Python工作环境的切换问题。...pyenv install 3.5.3 ? 查看当前系统中包含的Python版本 pyenv versions ?...*表示当前正在使用的Python版本 使用pyenv以后,可以快速地切换Python的版本。切换Python版本以后,与版本相关的依赖也会一起切换。因此,我们不用担心不同的版本在系统中是否会相互干扰。...例如,用户希望在项目A中使用Flask 0.8这个版本,与此同时,又想在项目B中使用Flask 0.9这个版本。如果我们全局安装Flask,则无法满足用户的需求。
通过本文,你将学会: 安装多个 Python 版本 安装 Python 的最新开发版 在已安装的版本间切换 与 pyenv 一起使用虚拟环境 自动激活不同的 Python 版本和虚拟环境 pyenv 命令...-dev 虚拟环境与 pyenv 虚拟环境在管理 Python 安装和应用程序中扮演着重要角色。...实际上,如果你愿意,可以继续沿用你现有的工作流程,尽管我认为在需要在不同环境之间切换且这些环境要求不同 Python 版本时,pyenv-virtualenv 能提供更流畅的体验。...3.6 在当前活动环境中不可用,但在其他环境中可用。...你已经了解到 pyenv 如何助你一臂之力: 安装多个版本的 Python 在这些版本间轻松切换 利用 pyenv 管理虚拟环境 自动激活不同的 Python 版本和虚拟环境 如果你有任何疑问,无论是在评论区域还是
确定版本号 在 pyenv-exec 命令中,首先会调用 pyenv-version-name 确定 python 版本或虚拟环境版本,具体查找规则为: [image.png] 确定与版本号对应的可执行文件...在 pyenv-exec 命令中,会再调用 pyenv-which 确定可执行文件 program 的路径。...pyenv global 此命令检查版本是否存在,存在则往 pyenv 安装路径>/version 文件中写入设置的版本号。...pyenv local 此命令检查版本是否存在,存在则往 /.python-version 文件中写入设置的版本号。...pyenv shell 此命令检查版本是否存在,存在则往 PYENV_VERSION 环境变量中写入设置的版本号。
例如项目 A 需要用到 requests 的 1.0 版本,项目 B 需要用到 requests 的 2.0 版本。如果不使用工具的话,一台机器只能安装其中一个版本,无法满足两个项目的需求。...virtualenv 的解决方案是为每个项目创建一个独立的虚拟环境,在每个虚拟环境中安装的库,对其他虚拟环境完全无影响。所以就可以在一台机器的不同虚拟环境中分别安装同一个库的不同版本。.../lib 中,不会与其他虚拟环境冲突 pip install requests # 执行 python 相关命令 python demo.py # 退出虚拟环境 deactivate pyenv 与上述两个工具不同...pyenv 是开源工具,具体实现原理在我的另外一篇文章《pyenv 神器原理分析》中解析。...为此,pyenv 引入了了 virtualenv 插件,可以在 pyenv 中解决同一个库的版本管理问题。
前言 不知道大家在日常开发工作中是否遇到过这样一个情况: 项目A用的是Python 2.7版本开发的(可能由于历史遗留问题没有升级更新版本) 项目B是用Python 3.10.4版本开发的,假设使用了requests...其次第二个问题:也许requests的版本在项目B和项目C中并不会造成什么影响。但是在某些其他项目中使用了同一个包的不同版本可能会造成巨大的影响。...安装pyenv以后,他会在你的$PATH中增加环境变量,如下: ❯ echo $PATH /Users/allenjol/.pyenv/plugins/pyenv-virtualenv/shims:/Users...pyenv version # 查看所有版本 pyenv versions # 查看有哪些版本可供安装 pyenv install --list # 安装python 3.10.4版本 pyenv install...版本 pyenv global system # 表示切换为pyenv的3.10.4版本 pyenv global 3.10.4 五、包管理插件pyenv-virtualenv 安装pyenv-virtualenv
Pyenv和Virtualenv均为Python管理工具,不同的是,Pyenv是对python的版本进行管理,实现不同版本之间的切换和使用;而Virtualenv则通过创建虚拟环境,实现与系统环境以及其他...它让你能够方便地切换全局python版本,安装多个不同的python版本,设置独立的某个文件夹或者工程目录特异的python版本,同时创建python虚拟环境(virtualenv's)。...所有这些操作均可以在类Unix系统的机器上(Linux和OS X)不需要依赖python本身执行,而且它工作在用户层,不需要任何sudo操作。...具体工作原理如下: 1、pyenv安装后会在系统PATH变量中插入shims路径,每次执行python相关的可执行文件时,会优先在shims里寻找python路径 ~/.pyenv/shims:/usr...执行pyenv global查看) 3、确定版本文件的位置和python版本后,pyenv会根据 版本号在 ~/,pyenv/versions/文件夹中查找对应的python版本。
一. pyenv简单介绍 在日常运维中, 经常遇到这样的情况: 系统自带的Python是2.x,而业务部署需要Python 3.x 环境, 此时需要在系统中安装多个Python版本,但又不能影响系统自带的...简单的说,pyenv 可以根据需求使用户在系统里安装和管理多个Python 版本: - 配置当前用户的python的版本; - 配置当前shell的python版本; - 配置某个项目(目录及子目录)的...它是如何工作的: 在较高级别上,pyenv使用注入到PATH中的shim可执行文件拦截Python命令,确定应用程序指定了哪个Python版本,并将命令传递到正确的Python安装。...pyenv 正是通过这些脚本,来灵活地切换至我们所需的Python版本。...根据pyenv官方的解释, 大致了解到的意思是: 当使用的python命令被pyenv接管以后,到底使用哪个python版本,是由下面这些信息依次决定的: 1) 如果PYENV_VERSION这个变量存在
最大的问题在于,在本地计算机同时安装Python2.7和Python3后,即使分别针对两个Python版本安装了virtualenv和virtualenvwrapper,也无法让两个Python版本的workon...另外一方面,要想在本地计算机安装多个Python版本,会发现安装的成本都比较高,实现方式也不够优雅。 幸运地是,针对该痛点,已经存在一个比较成熟的方案,那就是pyenv。 如下是官方的介绍。...该命令执行后会在$(pyenv root)目录(默认为~/.pyenv)中创建一个名为version的文件(如果该文件已存在,则修改该文件的内容),里面记录着系统全局的Python版本号。...,我们在本地计算机中就可以安装多个版本的Python运行环境,并可以按照实际需求进行灵活地切换。...在pyenv中,也包含这么一个插件,pyenv-virtualenv,可以实现同样的功能。
virtualenv无疑是成功的,它为每个项目创建一个虚拟环境,使得项目的依赖全部在一个虚拟且封闭的环境中,互不干扰。然而,这就够了吗?...想象下面一种场景:你的新项目在Python 3.3下面开发,而你维护的旧项目,却工作在Python 2.7之上,为了完成工作,你不得不安装两个Python解释器,并为每个解释器配置virtualenv,...pyenv是一个Python多版本管理工具,他设计精巧,通过巧妙的方法,可以使多版本的Python共存在一个操作系统能,简单地实现切换从而使用不同版本的Python。...mv Python-3.4.5.tgz Python-3.4.5.tar.gz pyenv install 3.4.5 -v 2、使用国内镜像的pyenv源安装,比如github上有老司机在七牛上搭建的...选项-f表示强制的,也就是如果已经存在这个虚拟环境,那么将会覆盖这个虚拟环境 选项-u表示upgrade,用于修改已经存在的虚拟环境的Python版本 VIRTUALENV_OPTIONS 是传递给virtualenv
因此,在多版本共存的情况下,Python多环境管理工具非常重要,常见Python多环境管理工具有Pyenv和Virtualenv。...Pyenv对Python的版本进行管理,实现不通版本间的切换和使用; Virtualenv通过创建虚拟环境,实现与系统环境以及其他Python环境的隔离。...Python版本后,pyenv会根据版本号在~/.pyenv/versions/文件夹中查找对应的Python版本。...特点: 在没有权限的情况下安装新套件 不同应用可以使用不同的套件版本 套件升级不影响其他应用 3.2 Virtualenv安装部署 [root@localhost ~]# pip install virtualenv...其中name与path与install中的一致,如果所删除的链接组中还有其他链接的话,系统将会自动从其他中选择一个priority高的链接作为默认为链接。
因为,我现在也不做其他python开发,所以,无需再安装其他环境了。...这条命令在本机上创建了一个名为env271的python虚拟环境,这个环境的真实目录位于:~/.pyenv/versions/ 注意,命令中的 ‘2.7.1’ 必须是一个安装前面步骤已经安装好的python...版本切换到anaconda版本下,不然,这个命令无法来查询。...向其中安装扩展可以: 直接用conda install并用-n指明安装到的环境,这里自然就是python2。 像virtualenv那样,先activate,然后在虚拟环境中安装。...你现在只需要知道,--distribute参数将会自动在虚拟环境中安装pip,免去了手动安装的麻烦。随着你的Python编程经验和知识增加,你会慢慢明白这个过程的具体细节。
virtualenv 使用虚拟环境的最大好处就是不会对系统中的Python造成影响。...不过在Python3.3+版本之后,可以使用Python字典的venv模块进行创建虚拟环境。...pyenv install --list 如果没有我们要安装的版本,可以更新pyenv, pyenv update 如果使用pyenv手工安装Python,在使用pyenv安装Python时,需要安装...] virtualenv-name> 选项-f表示强制的,也就是如果已经存在这个虚拟环境,那么将会覆盖这个虚拟环境 选项-u表示upgrade,用于修改已经存在的虚拟环境的Python...V Python 2.7.5 由于每个解释器间完全是隔离的,所以强烈建议我们的每个项目,都放置在单独的虚拟环境中。
CentOS上安装pyenv: 在安装pyenv前,需要先安装如下的依赖包: 在 CentOS/RHEL/Fedora 下: yum install readline readline-devel readline-static...3.6.0 # 安装3.6.0版本的python pyenv rehash # 更新数据库,在安装 Python 或者其他带有可执行文件的模块之后,需要对数据库进行更新: pyenv...versions # 列出目前本机上已经安装有哪些版本的python pyenv local 3.6.0 # 切换python版本,在当前目录及子目录下改变python版本(这个设置在我们切换到其它目录就失效...3.6.0 # 改变当前shell的python版本(在当前shell始终是生效的) 其他几个命令: pyenv uninstall 3.6.0 # 卸载3.6.0版本的python(注意卸载后...# 这个是兼容旧版本存在的 [root@t71 /root]# pyenv local 3.6.0/envs/proj1 切换到新建的proj1环境下(必须事先存在这个proj1) (3.6.0
/pyenv/pyenv-installer/master/bin/pyenv-installer | bash 使用缓存方式安装 在~/.pyenv/cache目录下(如果目录不存在,就自己创建)下载...python 3.5.3 源码包 运行命令 $ pyenv install 3.5.3 -v 配置 在python用户的~/.bash_profile中追加 export PATH="/home/python...$ pyenv help install 列出所有可用版本 $ pyenv install --list 安装指定版本 $ pyenv install 3.5.3 $ pyenv versions 设置...Python版本 $ pyenv global 3.5.3 切记,这里用global是因为是在非root用户python用户下 如果是root用户安装,请不要使用global,否则影响太大 使用pyenv...pyenv shell只作用于当前会话 $ pyenv shell system Virtualenv 插件,在plugins/pyenv-virtualenv $ pyenv virtualenv
前言 本人前端不太懂 Centos 上面的东西,这两天在搞阿里云的 Ecs 在上面安装 Python 环境,刚开始直接在官网下载了源码包编译安装了 Python3.7.4。...然后我们可以用 pyenv version 检测是否已经成功。 1. Python 安装篇 安装 Python 我们可以使用命令 pyenv install --list 查看可安装版本。...接着我们使用命令 pyenv install 3.6.9 安装 Python 3.6.9,或者你可以在后面接其他版本号。 我自己安装了三个版本,这个是其中两个: ? ?...2. pyenv-virtualenv 使用篇 pyenv-virtualenv 是用来创建一个干净的虚拟 Python 环境的。在我们需要区分环境的时候我们就可以用到他。...pyenv shell 3.6.3 # 查看已存在虚拟环境 pyenv virtualenvs # 创建某个版本的虚拟环境 pyenv virtualenv 3.6.9 env369 # 进入虚拟环境
领取专属 10元无门槛券
手把手带您无忧上云