。我正在打包一个包含数据文件的轮子,我需要能够获得它们的路径。
我已使用以下方法成功将文件添加到项目中:
setup.py file:
from setuptools import setup
setup(...,
data_files=[('data', glob('data/**'))],
...)
$ python3 setup.py bdist_wheel
这给了我一个轮子(当解压缩时)看起来像:
my_project-0.0.0-py3-none-any.whl
├── my_project
│ ├── __init__.py
│ ├── awesome_feature.py
├── my_project-0.0.0.data
│ ├── data
│ │ ├── config.txt
│ │ ├── important_params.csv
│ │ ├── large_data_blob.dat
如何从此项目中可靠地找到数据文件?
特别是,依赖my_project
的项目需要使用这些文件,我需要一些方法来查找data
文件夹的路径并将其返回到依赖于{{1}的项目}
my_project
之后,车轮中的数据似乎都没有在已安装的软件包中(根据磁盘使用情况来判断)。
我加入了这个功能:
pip3 install my_project-0.0.0.whl
返回的路径是:def get_data_path():
import pkg_resources
return pkg_resources.resource_filename('my_project', 'data')
,但该路径不存在?