파이썬 | 모듈 패키지 절대경로 상대경로

2022. 6. 26. 18:19·Python
반응형

 

sys.modules 와 sys.path

파이썬이 import 모듈을 찾을 때 순서대로 다음 장소들을 보면서 찾는다.

1. sys.modules: 한번이라도 import된 모듈이 들어있는곳

2. built-in modules: 파이썬 내장모듈(sys모듈은 내장모듈이다)

3. sys.path: 경로가 적혀있는 리스트

sys.path에서도 찾지 못하면 ModuleNotFoundError 에러를 리턴한다.

Absolute path와 ralative path

상대경로와 절대경로.

절대경로는 최상위(루트)부터 시작하는 경로이다.

상대경로는 현재위치 기준으로 시작하는 경로이다.

.(현재디렉토리), ..(상위디렉토리)

이런 구조에서 달(현재 위치)에서 목성의 칼리스토에 접근하고 싶은 경우

절대경로: /목성/칼리스토(목성.칼리스토)

상대경로: ../목성/칼리스토(..목성.칼리스토)

이렇게 표시한다.

파이썬에서는 슬래시 대신 .을 사용한다.

 

상대경로는 현재 모듈의 이름을 기준으로 한다. 메인모듈의 이름은 항상 __main__이라서 파이썬 어플리케이션의 메인모듈로 사용될 모듈은 항상 절대경로를 사용해야 한다

Note that relative imports are based on the name of the current module. Since the name of the main module is always "__main__", modules intended for use as the main module of a Python application must always use absolute imports.(https://docs.python.org/3/tutorial/modules.html#intra-package-references)

 

__init__.py 파일의 역할

__init__.py파일은 해당 디렉토리가 패키지라는 것을 알려주는 파일이다. 아무 내용도 적혀있지 않다.

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'Python' 카테고리의 다른 글

파이썬 | print(i, end='') 개행 없이 한줄로 출력  (0) 2022.07.07
파이썬 | 삼항연산자  (0) 2022.07.01
파이썬 | List vs. tuple vs. set vs. dictionary  (0) 2022.06.23
파이썬 | 함수의 인자(Arguments)와 매개변수(Parameter)  (0) 2022.06.23
파이썬 기초문법  (0) 2022.06.22
'Python' 카테고리의 다른 글
  • 파이썬 | print(i, end='') 개행 없이 한줄로 출력
  • 파이썬 | 삼항연산자
  • 파이썬 | List vs. tuple vs. set vs. dictionary
  • 파이썬 | 함수의 인자(Arguments)와 매개변수(Parameter)
이라후
이라후
  • 이라후
    화이팅
    이라후
  • 전체
    오늘
    어제
    • 분류 전체보기 (133)
      • TIL (23)
      • 기타 (26)
      • Python (14)
      • Django (10)
      • JavaScript (8)
      • git & GitHub (8)
      • Web (10)
      • Go (3)
      • wecode (31)
  • 반응형
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
이라후
파이썬 | 모듈 패키지 절대경로 상대경로
상단으로

티스토리툴바