在Python模块分发中计算目录路径
我有一个Python模块发行版(它是一个egg),其中包含一些额外的文件和目录,我希望在程序运行时复制这些文件和目录在Python模块分发中计算目录路径,python,module,pkg-resources,Python,Module,Pkg Resources,我有一个Python模块发行版(它是一个egg),其中包含一些额外的文件和目录,我希望在程序运行时复制这些文件和目录 ├── mypkg │ ├── extra_files │ │ ├── layouts/ │ │ ├── scripts/ │ │ └── config.yaml 当使用mypkg时,我想将extra_files目录的所有内容复制到磁盘上的其他地方。比如: shutil.copytree('mypkg/extra_files', d
├── mypkg
│ ├── extra_files
│ │ ├── layouts/
│ │ ├── scripts/
│ │ └── config.yaml
当使用mypkg
时,我想将extra_files
目录的所有内容复制到磁盘上的其他地方。比如:
shutil.copytree('mypkg/extra_files', destination)
我已经查看了pkg_参考资料
,但是我似乎无法通过这种方式计算到目录的路径
如何计算分发包中文件和目录的路径?我是否需要首先列出所有目录,然后对每个目录中的每个文件调用
pkg\u resources.resource\u stream
我可以用\uuuuuu file\uuuuu
实现这一点,它返回模块第一次从中加载的路径名。我可以获得静态目录的完整路径,如下所示:
import os
directory = os.path.join(os.path.dirname(__file__), 'templates/index.html')
实际上,我可以使用
\uuuuu file\uuuu
来执行此操作,该文件返回模块首次加载的路径名。我可以获得静态目录的完整路径,如下所示:
import os
directory = os.path.join(os.path.dirname(__file__), 'templates/index.html')