Python의 전체 파일 경로에서 모듈 가져 오기
Najwa Riyaz
2023년1월30일
- Python 3.5 이상에서 전체 파일 경로가있는 모듈 가져 오기
- Python 3.3 및 3.4에서 전체 파일 경로가있는 모듈 가져 오기
- Python 2에서 전체 파일 경로가있는 모듈 가져 오기
지정된 경로에서 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