TIL 모듈, 절대 상대 경로

이영주·2020년 10월 26일
0

TIL

목록 보기
12/12

모듈을 가져오는 방법을 알아보자

▶ import

  • 다른 파일에서 모듈을 가져오기 위해서는 import라는 명령어를 사용해야 한다.
  • 모듈의 함수를 사용하려면 모듈 이름 뒤에 .과 함수 이름을 써주면 된다.
import area

▶ from (모듈) import (함수1, 함수2)

  • 필요한 변수 또는 함수만 import할 수 있다.
from area import circle, square

▶ 이름 변경

  • 모듈을 가져올 때 import 뒤의 파일이름 또는 함수이름 을 변경해줄 수 있다.
import area as ar
from area import square as sq

모듈 검색 경로에 대해 알아보자

파이썬은 import하려는 모듈을 찾기 위해 특정 경로들을 살핀다.

  1. sys.modules
  2. built-in modules
  3. sys.path

▶ sys.module

import sys

print(sys.module)

path는 파이썬이 모듈이나 패키지를 찾기 위해 가장 먼저 확인해보는 곳이며 dictionary이다.

▶ built-in module

파이썬에서 제공하는 파이썬 공식 라이브러리로
Built-in 모듈들은 이미 파이썬에 포함되어 나온다.

▶ sys.path

import sys

print(sys.path)

path는 파이썬이 모듈을 찾기 위해 검색해보는 경로들이 list 로 저장되어 있다.

sys.modulesys.path의 차이점을 알아보자

  • 순서

파이썬은 import 하고자 하는 모듈과 package를 찾을때
sys.modules -> built-in -> sys.path에 지정되어 있는 경로들을 확인해서 찾는다.

  • list , dictionary

아래와 같이 pathlist의 형태로,
modules은 dictionary의 형태로 나타난것을 확인할 수 있다.

sys자체를 import할 때, 파이썬은 어떤 경로로 찾는지 알아보자

sysimport한 후 다른 파일에서 모듈을 가져오는 경로를 위에서 확인해보았다. sys는 어떤 경로로 찾아왔을까?

->sys 자체는 파이썬의built-in module로서 복잡한 경로로 들어가 찾지 않도록 되어있다.

->그 외에도 math, import random, import datetime, os.path 등이 있다.

Absolute pathrelative path 를 알아보자

Absolute path 절대경로
프로젝트의 가장 최상위 디렉토리에서 시작한다.

C:/my_app/package2/subpackage1/module5.py

relative path 상대경로
현재 위치(. 이나 ..으로 표현)에서 시작한다.

from . import class1

0개의 댓글