栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用源代码中package_data中的数据?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用源代码中package_data中的数据?

标准pkgutil模块的

get_data()
功能将计算相对于包的数据路径,并通过用于导入
hermes
包的Python模块加载器为您检索数据:

import pkgutildata = pkgutil.get_data('hermes', 'templates/python.tpl')

当然,在某些情况下,您可以使用从计算出的路径读取数据

hermes.__file__
,但是如果您打算分发项目,请考虑将其以不同的方式安装在最终用户的计算机上:作为纯文件,以压缩的鸡蛋形式部署档案等。在后一种情况下,您的
hermes
模块将由Python使用导入
zipimporter
,从而阻止您执行常规操作
open(path).read()

>>> import hermes>>> hermes.__loader__<zipimporter object "/home/pat/.cascade/virt/foo/lib/python2.6/site-packages/foo-0.0.0-py2.6.egg">

如果可以在

distribute
代码库上添加运行时依赖关系,则可以考虑考虑
pkg_resourcesmodule
,虽然可以提供相同的结果,但还可以添加其他功能。

import pkg_resourcesdata = pkg_resources.resource_string('hermes', 'templates/python.tpl')


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/639423.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号