假设我的python包中包含相同的数据文件。
我理解馏分不建议使用__file__
,因为如果您的模块位于egg文件中,您将无法获得有效路径。
现在,我应该在oder中使用哪种方法来读取这些文件,在鸡蛋内部或外面?
答案 0 :(得分:2)
使用评论中链接的其他问题,我得到了一个适用于 Python 2.6 + 的解决方案。特别是在我自己的模块中,我有像这样的代码和数据文件:
mymod/
|
| __init__.py
| code.py
| data.dat
要访问code.py中的data.dat,我这样做了:
import pkgutil
def get_data():
return pkgutil.get_data('', 'data.dat')