首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PIP格式的差异

PIP格式的差异
EN

Stack Overflow用户
提问于 2018-07-03 08:11:40
回答 3查看 142关注 0票数 1

在以下方面有何区别:

代码语言:javascript
复制
python -m pip install forecasting  

代码语言:javascript
复制
pip install forecasting  

在我的环境中,当第二种格式引发以下错误时,第一种格式正在工作:

ModuleNotFoundError:没有名为“pip._internal”的模块

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-07-03 08:26:26

回答你的第一个问题.

来自pip文档

pip是一个命令行程序。安装pip时,将向系统添加pip命令,该命令可以从命令提示符中运行,如下所示:

代码语言:javascript
复制
$ pip <pip arguments>

如果不能直接运行pip命令(可能是因为安装它的位置不在操作系统的路径上),那么可以通过Python解释器运行pip:

代码语言:javascript
复制
$ python -m pip <pip arguments>
票数 1
EN

Stack Overflow用户

发布于 2018-07-03 08:34:31

关于这个GitHub问题:

https://github.com/pypa/pip/issues/5373

尝试以下命令:

代码语言:javascript
复制
sudo easy_install pip
票数 1
EN

Stack Overflow用户

发布于 2018-07-03 09:12:58

它们是包向命令行公开命令的两种不同方式。

pip入境点。任何包都可以这样定义全局可用的命令,PIP (包)使用它来定义pip (命令)。

对于pip,使用此方法执行的函数被设置为pip._internal.main()

代码语言:javascript
复制
entry_points={
    "console_scripts": [
        "pip=pip._internal:main",
    ],
},

另一方面,python -m pip正在使用呼叫模块交换机。如果您的模块包含一个__main__.py文件,那么这个文件将由Python解释器简单地解释和执行。

如果是python -m pip这个文件实质上包含

代码语言:javascript
复制
from pip._internal import main as _main 
if __name__ == '__main__':
    sys.exit(_main())

因此,这两个命令试图执行相同的操作。

然而,最近PIP显示了一些奇怪的怪癖-- [1] [2],它们中的一种会导致两种情况中的一种,而另一种则会失败。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51149638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档