HOWTO · Python
Python의 전체 파일 경로에서 모듈 가져 오기
이 문서에서는 경로에서 Python 파일을 가져 오는 방법을 보여줍니다.
이 페이지의 내용
지정된 경로에서 Python 파일을 가져 오려면 Python 버전을 기반으로하는 Python 라이브러리를 사용합니다. 이 기사에서는 Python에서 모듈에 대한 전체 경로가 지정된 모듈을 가져 오는 방법을 설명합니다.
Python 버전을 기반으로 다음 라이브러리의 함수를 사용하여 모듈을 가져옵니다.
- Python 3.5 이상인 경우
importlib.util을 가져옵니다. - Python 3.3 및 3.4의 경우
importlib.machinery,SourceFileLoader를 가져옵니다. - Python 2의 경우
imp를 가져옵니다.
시작하기 전에 예제를 시연 할 수 있도록 파일 설정을 준비하십시오.
addmodule.py파일에서 다음 코드를 언급합니다.
def printingstatement():
print("From addmodule.py")
- 폴더 안에
addmodule.py를 넣습니다. 아래 예에서는c:\\Users\\Rexjohn\\Folder-1\\안에 있습니다.
Python 3.5 이상에서 전체 파일 경로가있는 모듈 가져 오기
Python 3.5 이상에서는importlib.util라이브러리의 함수를 사용하여 모듈을 가져옵니다.
import importlib.util
MODULE_PATH = "c:\\Users\\Rexjohn\\Folder-1\\addmodule.py"
MODULE_NAME = "addmodule"
spec = importlib.util.spec_from_file_location(MODULE_NAME, MODULE_PATH)
modulevar = importlib.util.module_from_spec(spec)
spec.loader.exec_module(modulevar)
modulevar.printingstatement()
여기에서importlib.util라이브러리의 다음 함수를 사용합니다.
spec_from_file_location(MODULE_NAME, MODULE_PATH).MODULE_PATH에서 모듈 이름MODULE_NAME의 전체 파일 경로를 언급하십시오.module_from_spec(spec)exec_module(modulevar)
출력:
From addmodule.py
Python 3.3 및 3.4에서 전체 파일 경로가있는 모듈 가져 오기
Python 3.3 및 3.4로 작업하는 경우importlib.machinery,SourceFileLoader라이브러리의 함수를 사용하여 모듈을 가져올 수 있습니다.
from importlib.machinery import SourceFileLoader
MODULE_PATH = "c:\\Users\\Rexjohn\\Folder-1\\addmodule.py"
MODULE_NAME = "addmodule"
modulevar = SourceFileLoader(MODULE_NAME, MODULE_PATH).load_module()
modulevar.printingstatement()
여기에서 언급하여importlib.machinery,SourceFileLoader라이브러리의 다음 함수를 사용합니다.
SourceFileLoader(MODULE_NAME, MODULE_PATH).load_module()
출력:
From addmodule.py
Python 2에서 전체 파일 경로가있는 모듈 가져 오기
Python 2의 경우imp라이브러리의 함수를 사용하여 모듈을 가져옵니다.
import imp
MODULE_PATH = "c:\\Users\\Rexjohn\\Folder-1\\addmodule.py"
MODULE_NAME = "addmodule"
modulevar = imp.load_source(MODULE_NAME, MODULE_PATH)
modulevar.printingstatement()
여기에서imp라이브러리의 다음 함수를 사용합니다.
load_source(MODULE_NAME, MODULE_PATH)
출력:
From addmodule.py