【问题标题】:Should I use pip or pip3? (clarification) [duplicate]我应该使用 pip 还是 pip3? (澄清)[重复]
【发布时间】:2021-03-30 09:37:02
【问题描述】:

我通过 pip 和 pip3 安装了很多包,我仍然困惑使用哪个以及有什么区别。 (一开始我用的是python(2.x版本),现在主要是python3) 在same question Should I use pip or pip3? 有使用python3 -m pippython -m pip 的答案(我想我对此一无所知,所以从未使用过)。你怎么知道你是使用第一个还是另一个? 和使用pip3pip 一样吗? 现在我主要使用python3而不是python,这是否意味着通过pip安装的包现在没用了? 如果有人建议通过以下方式安装某些软件包:pip install "some package" 它实际上是否意味着:将 pip 用于您使用的 python 版本?我通常会尝试这两个选项 - 所以我通过 pip 和 pip3 安装了一些包(尝试什么不会出错)。 单个python程序是否可以同时导入python(2)和python3包? (我在 Ubuntu 16.04 和 Kubuntu 18.04 上工作)

【问题讨论】:

标签: python python-3.x pip


【解决方案1】:

你问了很多问题...这里是你的答案:

问。如何判断您使用的是第一个还是另一个?

A.使用命令pip --versionpip3 --version

问。和使用pip3或者pip一样吗?

A.是的,如果上述两个命令给出相同的结果;否,否则。

问。现在我主要是使用python3而不是python,是否意味着通过pip安装的包现在没用了?

A.是的,python2 和 python3 不向后兼容,您编写的所有新代码都不适用于 python2;但是,删除内容时要小心,您可能会由于意外而在某处破坏某些代码。

问。如果有建议通过以下方式安装某些软件包: pip install "some package" 它实际上是否意味着:将 pip 用于您使用的 python 版本?

A.参考答案1。

问。单个python程序可以同时导入python(2)和python3包吗?

A.不,它不是那样工作的。检查 cmets 中的链接。

【讨论】:

    【解决方案2】:

    它的真正意思是:你使用的python版本使用pip吗?

    是的,当然。这是要记住的重要事情。同样非常重要的是:项目(库、应用程序、依赖项、需求、包)总是为一个特定的 Python 解释器版本安装。它们不共享。因此,例如,您可能在同一台机器上拥有多个 Python 3.8。有些可能在虚拟环境中,有些则不是。这就是为什么确保将 pip 用于您所定位的正确 Python 解释器非常重要的原因。我建议一路走下去并使用:

    /path/to/pythonX.Y -m pip install Something
    

    一旦您完全确信使用更短的形式(例如 pythonX.Y -m pippython -m pip ...)将与您心目中的确切 Python 解释器一起工作,那么只有这样您才能使用更短的版本(pipX.Y ...,或pip ...,我根本不推荐这些,除非您绝对确定,这几乎永远不会,因为pip 脚​​本可以被覆盖以指向不同的Python 解释器)。

    请注意,您可能应该使用虚拟环境,当然这也可以与虚拟环境完美配合(即使它们没有“激活”):

    path/to/venv/bin/python -m pip install Something
    

    对于虚拟环境,我会说直接使用pip 脚本比较安全:

    path/to/venv/bin/pip install Something
    

    您应该阅读以下内容:

    【讨论】:

      猜你喜欢
      • 2020-08-23
      • 1970-01-01
      • 1970-01-01
      • 2011-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-29
      • 2023-03-16
      相关资源
      最近更新 更多