我正在尝试为目录结构创建静态“模板”,并在这样的模块中调用此模板到给定文件的副本
# copy_template.py
def copy_template(destiny):
# Find from static resources
# and Copy the whole template dir
copytree(resource, destiny)
我有一个像这样的文件结构
# The assets dir and template dir actually have content, and I would like to
# reference them in the package for several reasons.
.
├── assets
│ ├── resource0
│ ├── resource1
│ └── resource2
├── template
│ ├── data
│ ├── img
│ └── assets
├── package
│ ├── __init__.py
│ ├── copytemplate.py
├── Pipfile
├── README.md
└── setup.py
我要弄清楚的是,模板目录是否需要包含在软件包中(根据我的阅读,它不是必需的),如何将其包含在setup.py
中以及如何引用模块中的文件。
我尝试使用
# setup.py
setup(...
package_data={
"": ["template/*"]
}
# reference attempt
package_name = __name__.split('.')[0]
print(pkg_resources.resource_listdir(package_name, ''))
但是,每当我尝试引用时,我都会得到TypeError
的回溯,所以我找不到如何使它起作用的方法。
有什么想法吗?