一个示例项目演示了在Python包中访问数据文件的各种方法

resources-example的Python项目详细描述


这个项目展示了如何在Python发行版中打包数据文件,并提供了一些读取数据文件的示例代码。要构建此发行版,请创建一个安装了setuptools、wheel和pep517的venv,然后将后者作为模块执行:

python -m pep517.build .

分布(一个sdist。焦油gz和一个bdist.whl)将被写入./dist/subdirectory。要测试它,请安装发行版并运行控制台脚本resources-example。在

下面是五种方法的兼容性摘要:

ModuleDescriptionIn stdlib?Works on Py2?Works on Py3?Works in zipfile?
example1.pyos.path.joinyesyesyesno
example2.pypkgutilyesyesyesyes
example3.pypkg_resourcesnoyesyesyes
example4.pyimportlib.resourcesyesnoyes (3.7+)yes
example5.pyimportlib_resourcesnoyesyesyes

如果您对从源代码创建可执行zip感兴趣,可以使用stdlibzipapp实用程序(python3.5+):

^{pr2}$

现在您可以使用解释器直接运行zip(任何Python版本):

python myapp.zip

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JPanel不会对键绑定做出反应   当时间大于零时,不得在UI线程上调用java Await   JTextArea的java线程安全。追加   Java用户输入的字和行计数器   java以spreedsheat格式将数据保存到文件中   java构造函数的意义是什么?   java findViewById返回null,尽管组件的ID存在   java如何向按钮添加图像   java如何中断ExecutorService的线程   java如何将属性(例如枚举)绑定到不同类型的组件属性(例如每个枚举的映像)?   随机森林分类器的java实现   html使用java连接到一个站点并发布,HTTP状态代码200   从类访问属性时发生java编译错误   Java自动填充ArrayList,搜索更好的选项