2016-09-17 28 views
1

我有一個Python模塊分佈(它是一個蛋),它包含一些額外的文件&我想在程序的運行期間複製的目錄。在Python模塊分配中計算目錄路徑

├── mypkg 
│ ├── extra_files 
│ │  ├── layouts/ 
│ │  ├── scripts/ 
│ │  └── config.yaml 

當使用mypkg是,我想extra_files目錄的所有內容複製到別的地方在磁盤上。喜歡的東西:

shutil.copytree('mypkg/extra_files', destination) 

我在pkg_resources採取一看但它看起來像我不能計算出一個目錄路徑的方式。

如何計算我的分發包中文件和目錄的路徑?我是否需要首先列出所有目錄,然後在每個目錄中的每個文件上調用pkg_resources.resource_stream

回答

0

我實際上可以做到這一點__file__,它返回模塊第一次加載的路徑名。我可以像這樣得到我的靜態目錄的完整路徑:

import os 
directory = os.path.join(os.path.dirname(__file__), 'templates/index.html')