gpt4 book ai didi

python - 如何列出 python 轮中的文件?

转载 作者:IT老高 更新时间:2023-10-28 22:04:12 24 4
gpt4 key购买 nike

我正在探索 setup.py 的各种选项以包含非 python 文件,但它们不太直观。我希望能够检查 bdist_wheel 生成的包以查看其中的实际内容——与其说是确保它可以工作(这就是测试的目的),不如说是查看我设置的选项的效果。

如何列出 .whl 中包含的文件?

最佳答案

您可以将wheel文件的扩展名更改为.zip,然后像任何其他zip文件一样提取内容。

来自 PEP 427

A wheel is a ZIP-format archive with a specially formatted file nameand the .whl extension.

示例

Django python package有一个轮子文件。试试 Django-1.8.4-py2.py3-none-any.whl举个例子。如果您想查看它们最终在存档中的存储位置,它们的包包含非 python 文件。

代码

以下代码使用 python2python3 可以正常工作。它将列出任何车轮包中的文件。我以pep8 wheel包为例,可以通过pip download --no-deps pep8==1.7.0下载其wheel。

import pprint
from zipfile import ZipFile

path = 'pep8-1.7.0-py2.py3-none-any.whl'
names = ZipFile(path).namelist()
pprint.pprint(names)

输出

['pep8.py',
'pep8-1.7.0.dist-info/DESCRIPTION.rst',
'pep8-1.7.0.dist-info/entry_points.txt',
'pep8-1.7.0.dist-info/metadata.json',
'pep8-1.7.0.dist-info/namespace_packages.txt',
'pep8-1.7.0.dist-info/top_level.txt',
'pep8-1.7.0.dist-info/WHEEL',
'pep8-1.7.0.dist-info/METADATA',
'pep8-1.7.0.dist-info/RECORD']

关于python - 如何列出 python 轮中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32923952/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com