Python 我应该使用pip还是pip3?(澄清)

Python 我应该使用pip还是pip3?(澄清),python,python-3.x,pip,Python,Python 3.x,Pip,我安装了许多由pip和pip3编写的软件包,我仍然不知道应该使用哪种软件包以及它们之间的区别。(起初我使用的是python(2.x版本),现在主要是python 3) 在里面 使用python3-mpip或python-mpip(我想我不知道这一点,所以从未使用过)。你怎么知道你用的是第一个还是另一个? 它是否与使用pip3或pip相同? 现在我主要使用python3而不是python,这是否意味着通过pip安装的包现在已经没有用了? 如果有建议让某个包通过以下方式安装它:pip安装“some

我安装了许多由pip和pip3编写的软件包,我仍然不知道应该使用哪种软件包以及它们之间的区别。(起初我使用的是python(2.x版本),现在主要是python 3) 在里面 使用
python3-mpip
python-mpip
(我想我不知道这一点,所以从未使用过)。你怎么知道你用的是第一个还是另一个? 它是否与使用
pip3
pip
相同? 现在我主要使用python3而不是python,这是否意味着通过pip安装的包现在已经没有用了? 如果有建议让某个包通过以下方式安装它:
pip安装“some package”
这是否意味着:对您使用的python版本使用pip?我通常会尝试这两种方法——因此我通过pip和pip3安装了一些软件包(尝试不会出错的方法)。
单个python程序是否可能同时导入python(2)和python3包?(我正在开发Ubuntu 16.04和Kubuntu 18.04)

你问了很多问题。。。以下是你的答案:

问:你如何判断你使用的是第一种还是另一种

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

这与使用pip3或pip相同吗

A.是,如果上述两个命令给出相同的结果;不,如果不是这样的话

现在我主要使用python3而不是python,这是否意味着通过pip安装的包现在已经没有用了

答:是的,python2和python3不向后兼容,您正在编写的所有新代码都不能与python2兼容;然而,在删除内容时要小心,因为意外,您可能会在某个地方破坏某些代码

问:如果有人建议某个软件包通过:pip安装“some package”来安装它,那么它实际上是指:在您使用的python版本中使用pip吗

A.参考答案1

单个python程序是否可能同时导入python(2)和python 3包

不,那样不行。检查评论中的链接

它实际上是否意味着:对您使用的python版本使用pip

是的,绝对是。这是要记住的重要事情。同样非常重要:项目(库、应用程序、依赖项、需求、包)总是针对一个特定的Python解释器版本安装的。它们不是共享的。例如,您可能在同一台机器上有多个Python3.8。有些可能在虚拟环境中,有些则不是。这就是为什么确保使用pip作为目标的正确Python解释器是极其重要的。我建议您一直使用以下方法:

/path/to/pythonX.Y-m pip安装一些东西
一旦您完全确信使用较短的形式,例如
pythonX.Y-m pip
python-m pip…
将与您心目中的python解释器配合使用,那么并且只有这样,您才能使用较短的版本(
pipX.Y…
,或
pip…
,这些我根本不推荐,除非您绝对确定,这几乎是绝对不可能的,因为
pip
脚本可以被覆盖以指向不同的Python解释器)

请注意,您可能应该使用虚拟环境,这当然也适用于虚拟环境(即使它们未“激活”):

path/to/venv/bin/python-m pip安装一些东西
对于虚拟环境,我认为直接使用
pip
脚本是安全的:

path/to/venv/bin/pip安装一些东西
您应该阅读以下内容:


这是否回答了您的问题?我不确定…:-)至少命令
ls-l`哪个pip`
pip show pip
是有用的,并且告诉我我正在使用相同的东西。