Python의 하위 디렉터리에서 모듈 가져 오기

Muhammad Waiz Khan 2023년1월30일
  1. __init__.py를 사용하여 Python의 하위 디렉토리에서 모듈 가져 오기
  2. sys.path.insert()메소드를 사용하여 Python의 하위 디렉토리에서 모듈 가져 오기
Python의 하위 디렉터리에서 모듈 가져 오기

이 튜토리얼은 Python의 하위 디렉토리에서 모듈을 가져 오는 다양한 방법을 설명합니다. 프로젝트 디렉토리의 하위 디렉토리에 파일이 있고 파일을 가져 와서 코드에서 메서드를 사용한다고 가정합니다.

하위 디렉토리를 패키지로 선언하여 Python의 하위 디렉토리에서 파일을 가져올 수 있습니다. 그래서 파이썬은 그것을 패키지로 취급하고 우리는 그 디렉토리에 대한 파일을 가져올 수 있습니다. 다른 옵션은PYTHONPATH환경 변수에 하위 디렉토리를 추가하는 것이며, 이는 Python이 기본적으로 가져올 패키지를 찾는 경로입니다. 이러한 방법의 세부 사항 및 사용은 다음과 같습니다.

__init__.py를 사용하여 Python의 하위 디렉토리에서 모듈 가져 오기

__init__.py파일은 디렉토리를 패키지로 선언하는 데 사용됩니다. __init__.py파일은 Python이 동일한 이름의 디렉토리를 혼합하는 것을 방지하므로 단순 디렉토리와 패키지를 구별하기 위해__init__.py파일이 사용됩니다.

__init__.py파일은 비어 있거나 패키지를 초기화하는 데 필요한 코드와 패키지와 함께 가져 오는 데 필요한 모듈 목록을 포함 할 수 있습니다. 이 목록은__all__변수로 표시됩니다.

__init__.py파일이 하위 디렉토리에 추가되면 다음 예제 코드와 같이 하위 디렉토리에서 파일을 가져올 수 있습니다.

import subdirectory.myfile

sys.path.insert()메소드를 사용하여 Python의 하위 디렉토리에서 모듈 가져 오기

하위 디렉토리에서 파일을 가져 오는 다른 방법은 해당 디렉토리를PYTHONPATH에 추가하는 것입니다. PYTHONPATH는 Python이 패키지를 가져 오기 위해 검색하는 디렉토리의 경로를 포함하는 환경 변수입니다.

따라서sys.path.insert()메소드를 사용하여PYTHONPATH에 하위 디렉토리를 추가하면 Python은 먼저PYTHONPATH의 디렉토리를 살펴보고 여기에서 가져옵니다.

sys.path.insert()메소드는 Python이 필수 모듈을 가져 오기 위해 검색 할 디렉토리 목록을 포함하는sys.path또는PYTHONPATH변수에 하위 디렉토리를 삽입합니다.

아래 예제 코드는sys.path.insert()메소드를 사용하여 하위 디렉토리에서 파일을 가져 오는 방법을 보여줍니다.

import myfile
import sys

sys.path.insert(0, "./subdirectory")

관련 문장 - Python Import