日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python里面的pip是什么意思_“pip install”和“python -m pip install”有什么区别?

發布時間:2024/1/8 python 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python里面的pip是什么意思_“pip install”和“python -m pip install”有什么区别? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我有一個本地版本的Python 3.4.1,我可以運行python -m pip install,但是我無法找到pip二進制文件來運行pip install.這兩者有什么區別?

解決方法:

他們完全一樣.事實上,分發Python模塊的文檔是just updated,建議使用python -m pip而不是pip可執行文件,因為更容易分辨哪個版本的python將用于實際運行pip.

編輯:

這里有一些更具體的“證明”,除了相信我的話和我鏈接的錯誤報告:)

如果你看一下pip可執行文件腳本,它就是這樣做的:

from pkg_resources import load_entry_point

load_entry_point('pip==1.5.4', 'console_scripts', 'pip')()

它調用load_entry_point,返回一個函數,然后執行該函數.它正在使用的入口點稱為“console_scripts”.如果你查看pip的entry_points.txt文件(我的Ubuntu機器上的/usr/lib/python2.7/dist-packages/pip-1.5.4.egg-info/entry_points.txt),你會看到:

[console_scripts]

pip = pip:main

pip2.7 = pip:main

pip2 = pip:main

因此返回的入口點是pip模塊中的主要功能.

當你運行python -m pip時,你正在pip包中執行__main__.py腳本.看起來像這樣:

import sys

from .runner import run

if __name__ == '__main__':

exit = run()

if exit:

sys.exit(exit)

而runner.run函數看起來像這樣:

def run():

base = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

## FIXME: this is kind of crude; if we could create a fake pip

## module, then exec into it and update pip.__path__ properly, we

## wouldn't have to update sys.path:

sys.path.insert(0, base)

import pip

return pip.main()

如您所見,它也只是調用pip.main函數.所以這兩個命令最終都在pip / __ init__.py中調用相同的main函數.

標簽:python,python-3-x,pip

來源: https://codeday.me/bug/20190926/1821804.html

總結

以上是生活随笔為你收集整理的python里面的pip是什么意思_“pip install”和“python -m pip install”有什么区别?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。