当前位置: 首页 > 面试题库 >

如何在python wheel中列出文件?

柯宜年
2023-03-14
问题内容

我正在setup.py研究包括非python文件在内的各种选项,它们有点不直观。我希望能够检查生成的程序包bdist_wheel以查看其中的实际内容-
并不是要确保它能正常工作(这就是测试的目的),而是要查看我设置的选项的效果。

如何列出包含的文件.whl


问题答案:

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

从PEP 427

轮盘是一种ZIP格式的存档,具有特殊格式的文件名和.whl扩展名。

的Django的Python包具有轮文件。以Django-1.8.4-py2.py3-none-
any.whl
为例。如果您想查看它们最终存储在存档中的位置,则它们的软件包中包含非python文件。

以下代码可在python2和python3中正常工作。它将列出任何滚轮包装中的文件。我以pep8车轮包装为例。

from zipfile import ZipFile
path = '/tmp/pep8-1.7.0-py2.py3-none-any.whl'
print(ZipFile(path).namelist())

输出量

['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']


 类似资料:
  • 我曾使用该代码列出只列出目录文件。我如何获得该目录中的文件列表?以及如何查找文件/文件夹的权限?

  • 这可以通过元数据实现吗?当在父文件夹中创建一个新文件/文件夹时,我是否也可以通过编程方式更新父文件夹的元数据,以便说:“嘿,在这个文件夹中有这些特定的文件?”

  • 问题内容: 我有这段代码,它从目录中读取所有文件。 效果很好。它使用目录“ text_directory”中所有以“ .txt”结尾的文件填充数组。 如何在 JAR文件中以类似方式读取目录的内容? 因此,我真正想要做的是列出我的JAR文件中的所有图像,这样我就可以加载它们: (之所以有效,是因为“ CompanyLogo”是“硬编码的”,但是JAR文件中的图像数量可以是10到200个可变长度。)

  • 这个问题展示了如何从停止的容器中复制文件。这要求我知道文件的完整路径,包括其文件名。我知道要从中复制文件的目录,但我不知道它的文件名,因为它是动态生成的。如何列出已停止Docker容器中目录中的文件? 如果Docker容器正在运行,那么下面的Docker命令非常有效。但是,如果Docker容器停止,它将失败。 注意:文件不存储在持久卷中。

  • 问题内容: 我正在使用命令来获取目录中的文件名,但输出在一行中。 像这样: 我需要一个内置的替代方法来获取文件名,每个文件名都换行,如下所示: 问题答案: 使用该选项(请注意,这是一个“一个”数字,而不是小写字母“ L”),如下所示: 不过,首先请确保您的支持。GNU coreutils(安装在标准Linux系统上)和Solaris一样;但如果有疑问,请使用或或查看文档。例如:

  • 问题内容: 有一个列出图像的命令,但是似乎没有对应的。 除了扎根并调查那里似乎没有办法。我想念什么吗?那是不应该做的事情吗? 问题答案: 要仅显示 正在运行的容器,请 使用给定命令: 要显示 所有容器,请 使用给定命令: 要显示 最新创建的容器 (包括所有状态),请使用给定命令: 要显示 n个最后创建的容器 (包括所有状态),请使用给定命令: 要显示 总文件大小,请 使用给定命令: 上面显示的内容

  • 问题内容: 使用来自注册表的docker映像时,我经常需要查看映像容器创建的卷。 注意:我在Red Hat 7上使用Docker版本1.3.2。 例 来自Docker Registry 的官方映像在处为容器配置了一个卷。 在容器中显示体积最简洁的命令是什么? 问题答案: 使用来获取容器ID。 然后 例: 1号航站楼 2号航站楼 输出 显然是由于使用 Go 语言来实现docker命令工具。 在没有命

  • 当使用来自注册中心的docker映像时,我经常需要看到映像的容器创建的卷。 在容器中显示卷的最简洁的命令是什么?