2016-09-17 5 views
1

저는 프로그램 런타임 중에 복사하려는 일부 추가 파일 & 디렉토리를 포함하는 파이썬 모듈 배포판 (달걀)을 가지고 있습니다. mypkg를 사용하는 경우Python 모듈 배포판에서 디렉토리 경로를 계산합니다.

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

, 나는 디스크에 다른 곳으로 extra_files 디렉토리의 모든 내용을 복사하고 싶습니다. 같은 : 나는 그런 식으로 디렉토리의 경로를 계산할 수없는 것처럼 내가 pkg_resources에서 살펴 보았다

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

그러나 그것은 보인다.

배포 패키지의 파일 및 디렉토리 경로를 어떻게 계산합니까? 먼저 모든 디렉토리를 나열한 다음 각 디렉토리의 각 파일에 pkg_resources.resource_stream을 호출해야합니까?

답변

0

모듈을 처음로드 한 경로 이름을 반환하는 __file__으로 실제로이 작업을 수행 할 수있었습니다. 다음과 같이 정적 디렉토리에 대한 전체 경로를 얻을 수 있습니다.

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