• [转]windows下多个python版本共存,pip使用


    windows下多个python版本共存,pip使用

    一、同时装了Python3和Python2,怎么区分

        了解python的人都知道python有2.x版本和3.x版本,而python3.x版本不向下兼容,但是根据具体的需要,有时候要2.x和3.x共存,python共存本身没有问题,只是需要设置一些环境变量和修改一些东西来让它更容易使用。本文主要说明的是windows环境

    首先当然是安装你需要的两个不同版本的python,这里我安装的是2.7和3.5的,两个版本安装顺序无所谓。

    wKiom1gHMCGDvGK7AAAIo6EVvU0084.png-wh_50

    接下来就是检查环境变量,缺少的我们需要添加。先找到环境变量的位置。

    wKioL1gHMH-C38e0AAEvcgquRRI899.png-wh_50

    在Path环境变量中检查以下4个变量(Path中的环境变量是以分号隔开的):

    E:Program FilesPythonPython35-32Scripts;

    E:Program FilesPythonPython35-32;

    E:Program FilesPythonPython27Scripts;

    E:Program FilesPythonPython27;

    然后进入Python2.7安装目录找到如图内容,把python.exe重命名为python2.exe

    wKioL1gHMXSxJuZZAAEiyKUBI1s831.png-wh_50

    然后进入python3.5安装目录。找到python.exe程序,把它重命名为python3.exe

    最后打开命令行界面测试一下。执行python2命令会进入python2.7的交互环境,执行python3命令会进入python3.3交互环境。

    wKioL1gHMeqxcfpnAAA3AUtZIvk775.png-wh_50

    二、同时装了Python3和Python2,怎么用pip?

    目前国内网站经常会让大家把其中一个python.exe改个名字(嗯,我也这样讲过,在此纠正一下),这样区分开两个可执行文件的名字,但是这样做有一个重大的隐患,就是修改了名字的那个python对应的pip将无法使用。

    官方的解法是什么?

    事实上这个问题几年以前Python社区就给出了官方解决方案,只不过国内一直没有注意到罢了。

    我们在安装Python3(>=3.3)时,Python的安装包实际上在系统中安装了一个启动器py.exe,默认放置在文件夹C:Windows下面。这个启动器允许我们指定使用Python2还是Python3来运行代码(当然前提是你已经成功安装了Python2和Python3)。

    如果你有一个Python文件叫 tab.py,那么你可以这样用Python2运行它

    py -2 tab.py

    类似的,如果你想用Python3运行它,就这样

    py -3 tab.py

    去掉参数 -2/-3

    每次运行都要加入参数-2/-3还是比较麻烦,所以py.exe这个启动器允许你在代码中加入说明,表明这个文件应该是由python2解释运行,还是由python3解释运行。说明的方法是在代码文件的最开始加入一行

    #! python2

    或者

    #! python3

    分别表示该代码文件使用Python2或者Python3解释运行。这样,运行的时候你的命令就可以简化为

    py tab.py

    使用pip

    当Python2和Python3同时存在于windows上时,它们对应的pip都叫pip.exe,所以不能够直接使用 pip install 命令来安装软件包。而是要使用启动器py.exe来指定pip的版本。命令如下:

    py -2 -m pip install XXXX

    -2 还是表示使用 Python2,-m pip 表示运行 pip 模块,也就是运行pip命令了。如果是为Python3安装软件,那么命令类似的变成

    py -3 -m pip install XXXX

    本文出自 “运维笔录 美玲” 博客,请务必保留此出处http://meiling.blog.51cto.com/6220221/1863526

  • 相关阅读:
    anchor-free : CornerNet 和 CenterNet 简要笔记
    图像分割中的loss--处理数据极度不均衡的状况
    python 装饰器
    python3 新特性
    VSCode Eslint+Prettier+Vetur常用配置
    JS lodash学习笔记
    JS 高端操作整理
    Vue 组件通信
    Vue 搭建vue-element-admin框架
    小程序 HTTP请求封装
  • 原文地址:https://www.cnblogs.com/skysowe/p/9190489.html
Copyright © 2020-2023  润新知