import statement가 modulepackage를 찾는 방법

  1. import search 순서

    syn.modules => built-in modules => sys.path

  • sys.modules

    • dictionary 형태로 module을 저장함

    • 이미 importpackage들을 저장함

    • 한 번 importmodule을 파이썬이 다시 찾지 않도록 도움

  • built-in modules

    • 파이썬에서 제공하는 공식 library

    • 포함돼서 오는 것이기 때문에 쉽게 찾음

    • sys.modules, sys.path를 사용하기 위해서는 sysimport해야하는데, 이 sysbuilt-in modules에 해당함

  • sys.path

    • 파이썬이 마지막으로 찾는 장소

    • module의 경로를 list의 형태로 저장함

  1. Absolute Path and Relative Path

    • Absolute Path : import하고자 하는 module의 위치를 모두 써줘야 함

    • Relative Path : import하고자 하는 module의 위치를 현재 파일 경로와 비교해서 찾음

      • . : 현재 디렉토리

      • .. : 현재 디렉토리보다 상위 디렉토리

    • 디렉토리가 달라질 경우 ...이 나타내는 디렉토리가 달라져서 수정이 필요할 수 있으므로 Absolute Path의 사용을 권장함