데이터과학 삼학년

python custom import path 지정 본문

Python

python custom import path 지정

Dan-k 2020. 7. 15. 16:37
반응형

본인이 만든 python파일을 import 하는 방법에 대해 소개한다.

 

import 할 파일이 현재 실행시킬 파일과 동등한 위치에 있을 때는 

from . import 파일

상위 폴더안에 있을때

from 폴더명 import 파일

하지만 상위, 하위의 파일들이 조금 꼬일때가 있다...

 

이때는 그냥. sys.path 에 import 할 해당 파일의 기본 경로를 넣어주는 것이 좋다.

 

기본적으로 python에서 import를 할때 sys.path에 있는 경로들을 scan한다.

import sys

sys.path


['/var/lib/jenkins/workspace/text_classification_test/text_classification/src', 
'/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', 
'/var/lib/jenkins/.local/lib/python3.6/site-packages', '/usr/local/lib/python3.6/dist-packages', '/usr/lib/python3/dist-packages']

이런식으로 sys.path가 있다.  

만약 불러올 파일이

/var/lib/jenkins/workspace/pan_text_classification_test/text_classification/folder 안에 있다면

해당 path를

sys.path.append(import할 파일의 절대경로 폴더)

실행해주면 된다.

import sys

sys.path.append(os.path.abspath(os.path.dirname('preprocessing_for_predict.py')))


====
['/var/lib/jenkins/workspace/text_classification_test/text_classification/src', '/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/var/lib/jenkins/.local/lib/python3.6/site-packages', 
'/usr/local/lib/python3.6/dist-packages', '/usr/lib/python3/dist-packages', '/var/lib/jenkins/workspace/text_classification_test', '/var/lib/jenkins/workspace/pan_text_classification_test/text_classification']

 

728x90
반응형
LIST
Comments