的信息是存在的,但你必須要挖圍繞dist-info
和/或egg-info
子目錄找到它。
- 二進制分發在其元數據子目錄中包含
RECORD
文件。
- 源代碼發佈包括其元數據子目錄中的
installed-files.txt
文件。
RECORD
文件是csv行(路徑,散列,大小)的記錄在PEP-376。來自雞蛋的舊版installed-files.txt
只是文件名,您必須手動統計這些文件。
作爲一個簡單的例子,我有我的包copyingmock的源代碼和二進制發行版,可在PyPI上找到。隨着(pip install copyingmock
)安裝二進制分發:
$ pip show --files copyingmock
Name: copyingmock
Version: 0.1
Summary: A subclass of MagicMock that copies the arguments
Home-page: https://github.com/wimglenn/copyingmock
Author: Wim Glenn
Author-email: [email protected]
License: MIT
Location: /tmp/blah/venv/lib/python3.6/site-packages
Requires:
Files:
__pycache__/copyingmock.cpython-36.pyc
copyingmock-0.1.dist-info/DESCRIPTION.rst
copyingmock-0.1.dist-info/INSTALLER
copyingmock-0.1.dist-info/LICENSE.txt
copyingmock-0.1.dist-info/METADATA
copyingmock-0.1.dist-info/RECORD
copyingmock-0.1.dist-info/WHEEL
copyingmock-0.1.dist-info/metadata.json
copyingmock-0.1.dist-info/top_level.txt
copyingmock.py
$ cat venv/lib/python3.6/site-packages/copyingmock-0.1.dist-info/RECORD
copyingmock.py,sha256=DoLAuaS7KqGT87BIlD93G1M7q9bNWgHYu1m1TZP1D1g,345
copyingmock-0.1.dist-info/DESCRIPTION.rst,sha256=L_0CS_8XNYgAVfq3tj3GZEYg_9vML9nDP-FUU37GIbs,1541
copyingmock-0.1.dist-info/LICENSE.txt,sha256=sDdX5cBRRpk3rmZ8hbYEfAUIYRdDqrlXmChOUkqf62o,1066
copyingmock-0.1.dist-info/METADATA,sha256=bKJ5RXwvj0rGrg22p4K91WiJoLM5MqLHYqlpWYWUhPU,2031
copyingmock-0.1.dist-info/RECORD,,
copyingmock-0.1.dist-info/WHEEL,sha256=5wvfB7GvgZAbKBSE9uX9Zbi6LCL-_KgezgHblXhCRnM,113
copyingmock-0.1.dist-info/metadata.json,sha256=SLtuqq4tUGr0A2h4hQnZEdPIm_4MrvcunLzP-_1I7Qc,677
copyingmock-0.1.dist-info/top_level.txt,sha256=X3FsY_0npOxR5rKvOJ-b2rdiNfSiIivwVKN4JgY7cac,12
copyingmock-0.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
__pycache__/copyingmock.cpython-36.pyc,,
然後在強迫與源分佈(pip uninstall copyingmock
然後pip install --no-binary=copyingmock copyingmock
)重新安裝:
$ pip show --files copyingmock
Name: copyingmock
Version: 0.1
Summary: A subclass of MagicMock that copies the arguments
Home-page: https://github.com/wimglenn/copyingmock
Author: Wim Glenn
Author-email: [email protected]
License: MIT
Location: /tmp/blah/venv/lib/python3.6/site-packages
Requires:
Files:
__pycache__/copyingmock.cpython-36.pyc
copyingmock-0.1-py3.6.egg-info/PKG-INFO
copyingmock-0.1-py3.6.egg-info/SOURCES.txt
copyingmock-0.1-py3.6.egg-info/dependency_links.txt
copyingmock-0.1-py3.6.egg-info/top_level.txt
copyingmock.py
$ cat venv/lib/python3.6/site-packages/copyingmock-0.1-py3.6.egg-info/installed-files.txt
../copyingmock.py
../__pycache__/copyingmock.cpython-36.pyc
dependency_links.txt
PKG-INFO
top_level.txt
SOURCES.txt
來源
2017-10-16 22:33:07
wim
使用Python代碼:使用 「畫中畫列表」 命令(趕上其輸出),然後將每個package_name放在「pip show」命令中並加上「for」,以顯示它們的信息。 – DRPK
'pip list'和'pip show'是快速檢查@DRPK提到的最簡單的方法,但是如果您正在挖掘單個文件,您可以看到每個python實例的安裝位置,並打開python IDLE或從CLI然後'導入網站''site.getsitepackages()'然後返回類似'['/usr/lib64/python2.7/site-packages','/usr/lib/python2.7/ site/packages','/ usr/lib/site-python']'你可以在哪裏驗證這些文件是相同的,以防萬一發生在一個而不是其他的 –
stephen