我想知道一种使用Python访问资源文件的好方法。现在我正在使用pkgutil.get_data(...),一旦安装了软件包,它就可以正常工作,但是在我的开发环境中却不能,因为我有“ src”和“ resources”目录作为同级。我还将test_resources保留在另一个兄弟目录中,并希望测试能够找到test_resources。有没有办法扩展pkgutil的搜索路径?我的文件结构示例如下:
├── resources
│ └── download
│ └── file
│ └── type
│ └── config.yaml
├── src
│ └── download
│ ├── __init__.py
│ ├── file
│ │ ├── __init__.py
│ │ ├── type
│ │ │ ├── __init__.py
│ │ │ └── code.py
├── test
│ ├── test_x.py
│ ├── test_y.py
│ └── test_z.py
└── test_resources
├── test_resources1.yaml
└── test_resources2.yaml
答案 0 :(得分:0)
尝试将这些路径传递给pkgutil调用。
ResrcConfigPath = os.path.expanduser('~path/to/resources/download/file/type/config.yaml')
TestResourcesDir = os.path.expanduser('~path/to/test_resources/')
testResource1Path = os.path.join(TestResourcesDir, "test_resources1.yaml")
testResource2Path = os.path.join(TestResourcesDir, "test_resources2.yaml")