你能告诉我如何读取Python包中的文件?
我加载的包有许多我想从程序中加载的模板(用作字符串的文本文件).但是如何指定此类文件的路径?
想象一下,我想从以下位置读取文件:
package\templates\temp_file
Run Code Online (Sandbox Code Playgroud)
某种路径操纵?包基路径跟踪?
我有一个这样的项目:
??? CHANGES.txt
??? LICENSE
??? MANIFEST.in
...
??? docs
? ??? index.rst
??? negar
? ??? Negar.py
? ??? Virastar.py
? ??? Virastar.pyc
? ??? __init__.py
? ??? data
? ? ??? __init__.py
? ? ??? untouchable.dat
? ??? gui.py
? ??? gui.pyc
? ??? i18n
? ? ??? fa_IR.qm
? ? ??? fa_IR.ts
? ??? negar.pro
??? setup.py
...
Run Code Online (Sandbox Code Playgroud)
在里面我的文件Virastar.py需要一些数据data.untouchable.dat.它工作正常,直到我用这个安装项目setup.py:
setup(
...
include_package_data=True,
packages = find_packages() + ['negar'],
package_dir={'negar': 'negar'},
package_data={'negar': ['data/*.dat']}, …Run Code Online (Sandbox Code Playgroud) 我正在构建我的第一个 python 包(然后使用 pip 安装),并且我需要使用一些非 python 文件。在这些答案中,解释了我应该使用该pkg_resources功能。但我无法找出一个有效的例子。假设我有这个项目结构:
package_name/
----data/
--------image.png
----package_name/
--------__init__.py
--------file.py
----setup.py
----MANIFEST.in
----conf.yml
Run Code Online (Sandbox Code Playgroud)
现在我想访问conf.yml并image.png来自file.py. 我应该如何进行: