iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python多版本切换工具-Pyenv
  • 762
分享到

Python多版本切换工具-Pyenv

版本工具Python 2023-01-31 08:01:06 762人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

为了安装Anaconda科学计算环境,控制好python版本,今天上午总算折腾好了。 学习Python有时希望在python2.7环境下,有时希望在python3.4环境下,该怎么办呢? Anconda的包也不知道适合在什么环境下工作?

为了安装Anaconda科学计算环境,控制好python版本,今天上午总算折腾好了。

  • 学习Python有时希望在python2.7环境下,有时希望在python3.4环境下,该怎么办呢?

  • Anconda的包也不知道适合在什么环境下工作?

解决多python环境下,python版本切换的工具--pyenv应运而生。同时,另外一个工具virtualenv则提供了一种功能, 就是将一个目录建立为一个虚拟的python环境, 这样的话, 用户可以建立多个虚拟环境, 每个环境里面的python版本可以是不同的, 也可以是相同的, 而且环境之间相互独立。
下面简要介绍一下安装的过程:

安装pyenv

$ git clone https://GitHub.com/yyuu/pyenv.git ~/.pyenv     #使用 git 把 pyenv 下载到家目录
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc     #然后需要修改环境变量,使用 Bash shell 的输入

$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc

$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc     #最后添加 pyenv init

$ exec $SHELL -l     #输入命令重启 Shell,然后就可以重启pyenv

查看pyenv可安装的版本列表

$ pyenv install --list

該命令将列出pyenv可以安装的列表,单单列举几个咱们关心的python和anaconda把:

2.7.8   # Python 2最新版本 

3.4.1   # Python 3最新版本

anaconda-2.4.0  # 支持Python 2.6和2.7

anaconda3-2.0.1 # 支持Python 3.3和3.4

安装指定的python版本。

$ pyenv install 3.4.1 

该命令会从github上下载python的源代码安装,但是,我这里主要是用来进行科学计算的环境安装,因此,最后选择安装
anaconda-2.4.0(python2.7环境) 和 anaconda3-2.4.0(python3.4环境)。可以选择都安装,之后可以使用pyenv进行版本的切换。
注:

  • 这里利用pyenv命令安装的python版本都安装在~.pyenv/versions文件夹下,当然,如果你从图形界面进入ubuntu的用户主目录下可能看不见.pyenv文件夹,这时候,你可以使用ls -a看到隐藏的文件夹。

  • 使用pip安装的包完成之后,可能需要对数据库进行更新:

pyenv rehash

卸载指定的python版本

pyenv uninstall x.x.x

python版本查看

查看当前已经安装了的python版本:

pyenv versions

输出结果如下:

*system (set by /home/michael/.pyenv/version)
2.7.1
3.4.1
anaconda-2.4.0

system是指系统的python版本;*表示当前环境所处于的python版本

python版本切换

全局版本切换:

pyenv global anaconda-2.4.0

全局切换为anaconda科学计算环境,因为,我现在也不做其他python开发,所以,无需再安装其他环境了。
查看现在的python版本:

michael@michael-ThinkCentre-XXXX:~$ pyenv versions
system
2.7.1
3.4.1
* anaconda-2.4.0 (set by /home/michael/.pyenv/version)

有全局版本切换,当然也会有局部环境的切换:
在test文件夹下希望切换到python3.4.1:

pyenv local python3.4.1

虽然直接安装pip安装virtualenv也行,但是通过pyenv插件的形式安装virtualenv的虚拟环境更加方便,因为之后的操作会比较方便。

安装插件pyenv-virtualenv

参考文章:Http://www.tiny-coder.com/home-article-51.html
pyenv-virtualenv插件安装:项目主页:https://github.com/yyuu/pyenv-virtualenv
pyenv virtualenv是pyenv的插件,为UNIX系统上的Python virtualenvs提供pyenv virtualenv命令。

git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
source ~/.bash_profile

这个插件将安装在主文件夹下的.pyenv文件夹中。

创建一个2.7.1的虚拟环境

pyenv virtualenv 2.7.1 env271

再需要创建虚拟环境的文件夹下创建虚拟环境。

这条命令在本机上创建了一个名为env271的python虚拟环境,这个环境的真实目录位于:~/.pyenv/versions/

注意,命令中的 ‘2.7.1’ 必须是一个安装前面步骤已经安装好的python版本, 否则会出错。

然后我们可以继续通过 ‘pyenv versions’ 命令来查看当前的虚拟环境。

切换和使用新的python虚拟环境:

pyenv activate env271

这样就能切换为这个版本的虚拟环境。通过输入python查看现在版本,可以发现处于虚拟环境下了。
下面基本上你就可以在这个虚拟环境里面为所欲为了 :) 再也不用担心系统路径被搞乱的问题了
如果要切换回系统环境, 运行这个命令即可

pyenv deactivate

那如果要删除这个虚拟环境呢? 答案简单而且粗暴,只要直接删除它所在的目录就好:

rm -rf ~/.pyenv/versions/env271/

或者卸载:

pyenv uninstall env271

使用conda list查看anaconda安装自带的包:

michael@michael-ThinkCentre-XXXX:~/test$ conda list
# packages in environment at /home/michael/.pyenv/versions/anaconda-2.4.0:
#
abstract-rendering 0.5.1 np110py27_0 
alabaster 0.7.6 py27_0 
anaconda 2.4.0 np110py27_0 
anaconda-client 1.1.0 py27_0 
arGComplete 1.0.0 py27_1 
astropy 1.0.5 np110py27_1 
babel 2.1.1 py27_0 
backports.ssl-match-hostname 3.4.0.2 <pip>

注:

  • 使用conda list命令的环境时python版本切换到anaconda版本下,不然,这个命令无法来查询。

  • 看上面列表就能知道,anaconda的环境下,也是能使用系统pip命令安装的包的!

给anaconda安装包

conda install ××××

如果需要指定包的版本。

[package-name]=x.x   #指定包的版本

多个Python版本并存,尤其是2.x和3.x的并存。

这个通过virtualenv可以做到。Anaconda也正是通过其实现的。下面用conda创建一个名叫python2的版本为python2.7的环境。

conda create -n python2 python=2.7

这样就会在Anaconda安装目录下的envs目录下创建python2这个目录。
向其中安装扩展可以:

直接用conda install并用-n指明安装到的环境,这里自然就是python2。
像virtualenv那样,先activate,然后在虚拟环境中安装。
注:

  • 关于virtualenv的使用,还需了解,可以参考python生态

  • 下面的操作,貌似会安装很多包,谨慎使用。

conda create -n py34 python=3.4 anaconda

可以选择安装anaconda 不同的版本,然后按照下面操作,切换版本。windows/linux下都有PyCharm

打开pycharm,打开preference --> project --> project interpreter-->

首先当然是安装你需要的两个不同版本的python,我安装的是2.7和3.4的,两个版本安装顺序无所谓,但是后面安装的会变成默认的(因为我是后安装的python 3.4,它就变成了默认的python)。

然后去python27 文件夹下面把python.exe改名python2.exe,然后就可以在命令行下通过python或者py来调用3.x,python2来调用2.x。

另外pip的话直接使用 pip2 或者 pip3 就可以了。

简单来说,你的每一个项目都可以拥有一个单独的、孤立的Python环境;你可以把所需的包安装到各自孤立的环境中。1

  • 还是通过pip安装virutalenv。

sudo pip install virtualenv
  • 安装完之后,运行下面的命令,为你的项目创建孤立的Python环境。

$ mkdir my_project_venv
$ virtualenv --distribute my_project_venv
# The output will something like:
New python executable in my_project_venv/bin/python
Installing distribute.............................................done.
Installing pip.....................done.

那么这行代码都做了些什么呢?你创建了一个名叫my_project_venv的文件夹,用于存储新的Python环境。--distribute参数告诉virtualenv使用基于distribute包开发的新的、更好的打包系统,而不是基于setuptools的旧系统。你现在只需要知道,--distribute参数将会自动在虚拟环境中安装pip,免去了手动安装的麻烦。随着你的Python编程经验和知识增加,你会慢慢明白这个过程的具体细节。

  • 通过下面的命令,激活虚拟环境:

$ cd my_project_venv
$ source bin/activate

使用source命令启动activate脚本之后,你的命令行提示符应该会变成这样:

(my_project_venv)$

虚拟环境的名称会添加在$提示符的前面。

  • 现在运行下面的命令,关闭虚拟环境:

(my_project_venv)$ deactivate

当你在系统层面安装virtualenv时(如果激活了虚拟环境,请先关闭),可以运行下面的命令帮助自己理解。

首先,我们来看看如果我们在终端输入python或者pip,系统会使用哪个执行文件。

$ which python
/usr/bin/python
$ which pip
/usr/local/bin/pip

pyenv

  1. Python多版本共存之pyenv

  2. yyuu/pyenv-github

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

  4. lixm/pybooklet-github

  5. 使用 pyenv 和 Miniconda 管理 Python 科学计算环境

  6. Python 2.X 3.X 多版本共存

  7. 一篇文章入门Python生态系统

  8. 用pyenv和virtualenv搭建python虚拟环境

Anaconda

  1. DOWNLOAD ANACONDA NOW

  2. P]ython科学计算利器——Anaconda

  3. Python科学计算发行版—Anaconda


  1. 一篇文章入门Python生态系统 ↩

--结束END--

本文标题: Python多版本切换工具-Pyenv

本文链接: https://www.lsjlt.com/news/193266.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python多版本切换工具-Pyenv
    为了安装Anaconda科学计算环境,控制好python版本,今天上午总算折腾好了。 学习python有时希望在python2.7环境下,有时希望在python3.4环境下,该怎么办呢? Anconda的包也不知道适合在什么环境下工作?...
    99+
    2023-01-31
    版本 工具 Python
  • Python超有用的多版本管理工具pyenv
    目录1、安装与配置2、使用pyenv3、总结前言: 我们在平时的项目开发或者学习中,有可能使用不同的Python版本,大家都知道Python的版本非常多,如果我们把需要的不同版本的P...
    99+
    2024-04-02
  • python多版本管理(pyenv)
    安装python构建中的依赖库 yum install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel pyenv 安装 使...
    99+
    2023-01-31
    版本 python pyenv
  • 多版本python切换
     打开终端分别输入下面两条命令: sudo update-alternatives --install /usr/bin/python python /usr/bin/python2...
    99+
    2023-01-31
    版本 python
  • 多版本切换python
    Python 安装包去官网自行下载: https://www.python.org/downloads/mac-osx/Mac os 自带python, 但我记得是python2.7版本在选择安装包时候避免使用太新的版本. 配置环境:$ v...
    99+
    2023-01-31
    版本 python
  • pyenv管理多版本python
    安装不同的python版本并不是一件易事,更何况想在同一主机上来回切换不同版本的python是难上加难!大家都知道多版本会导致互相干扰,但是不是不不能解决呢??确切回答:不是,因为有一个学习python的好帮手pyenv来管理不同的pyth...
    99+
    2023-01-31
    版本 pyenv python
  • Python多版本神器-Pyenv
    Python多版本神器-Pyenv一、简介 使用pyenv可以在一个操作系统上使用多个python版本,自由切换,无比顺畅。它的使用不依赖于Python,是一个简单、独立的纯 shell 脚本工具。二、Pyenv安装 1 切换到root用户...
    99+
    2023-01-31
    神器 版本 Python
  • 如何使用工具切换node版本
    这篇文章主要讲解了“如何使用工具切换node版本”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用工具切换node版本”吧!之前都没有接触过需要切换 n...
    99+
    2024-04-02
  • php 多版本切换
    项目开发中实际会存在,php版本不同的情况。下面看具体实现方法。 以下均是在 windows 下操作完成。 先看一下我本地的 php 版本 我这里默认版本是php7.1 ,下面看一下环境变量配置 默认版本不需要改 php.exe 名称,保...
    99+
    2023-09-21
    php 开发语言
  • flutter多版本切换
    方式一:符号连接(软链接) 注:无需修改环境变量,也不用重启AndroidStudio mac具体flutter版本切换操作步骤: 1、项目clean然后切换自己需要的分支 删除文件夹flutter目录文件(这里的flutter是原来的符号...
    99+
    2023-09-08
    flutter android flutter版本管理
  • composer 多版本切换
    为啥会有这个需求,我最近在维护老项目时,发现安装的 composer 版本太新了,对 php 版本有最低要求,通过 composer 降级命令(composer self-update --1)操作,处理完了还得升回来,就想到了这个方法。 ...
    99+
    2023-10-20
    composer php
  • 【丐版JDK管理工具-Daen-JDKMAN-V1.0】Python实现JDK多版本切换管理工具V1.0,已打包成EXE
    🧑‍💻作者名称:DaenCode 🎤作者简介:CSDN实力新星,后端开发两年经验,曾担任甲方技术代表,业余独自创办智源恩创网络科技工作室。会点点Ja...
    99+
    2023-09-26
    java python 开发语言
  • wing 切换python版本
    python exxcutable设置python路径,可以更改python版本和(32/64位切换) python path也是设置这个的,我是两个都设置了。 ...
    99+
    2023-01-31
    版本 wing python
  • ubuntu切换python版本
    在没有安装类似anoconda的管理工具的时候,我们常常会被Ubuntu下的Python版本切换问题所头疼。 可以使用update-alternatives工具进行python版本的任意切换 当使用u...
    99+
    2023-09-23
    ubuntu python linux
  • pyenv安装与使用-多版本python
    说明:由于centos或者RHEL操作系统自带的python一般都比较低,centos6 自带的python版本都是2.6.6,但是现在一般python使用的版本都是2.7版本,以前总在操作上源码升级python,但是这样会导致的yum等利...
    99+
    2023-01-31
    版本 pyenv python
  • python的版本切换
    对于pycharm:对于eclips的切换:先添加3.x目录:pip install:(cd到各自环境目录)...
    99+
    2023-01-31
    版本 python
  • anaconda切换python版本
    1 查看环境 conda env list 结果如下图,左侧表示已下载的环境信息,当前我已经下载了python3.10(python310)和3.9(python39)两个版本 2 切换python...
    99+
    2023-10-27
    python 开发语言
  • 然后使用在Homestead中版本管理工具切换 PHP 版本
    然后使用在Homestead中版本管理工具切换 PHP 版本,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Homestead 下切换 PHP 版本Laravel 的 Homes...
    99+
    2023-06-22
  • linux多个python版本共存切换方
    python命令通常存在 /usr/bin/python和/usr/local/bin/python下面,一般是符号链接,优先使用后者, 如果有...
    99+
    2023-01-31
    多个 版本 linux
  • Linux下切换Python版本
    这两天遇到一个问题需要在 python3 的环境下进行测试,由于Linux默认已经安装了Python2.7,并且作者一直也在使用 ,所以需要重新安装并临时切换到 python3。 在网上查到很多资料,但是每一篇都讲的不全,需要结合起来看才行...
    99+
    2023-01-31
    版本 Linux Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作