본문 바로가기

프로그래밍/[Python] 파이썬

파이썬 패키지, 모듈 import 하는 방법 정리 (import, from , as)

by GenieIT* 2024. 11. 30.

728x90
728x90

 

1. 파이썬 import 정의

  • 파이썬에서 모듈을 가져오는 방법(import)코드 재사용성을 높이고, 다양한 라이브러리와 기능을 손쉽게 활용할 수 있도록 도와줍니다.
  • import는 특정 모듈 또는 모듈 내의 특정 요소를 가져와 사용할 수 있도록 하는 키워드입니다.

 


 

2. 기본 import

  • 모듈 전체를 가져옵니다.
  • 모듈의 이름을 사용하여 해당 모듈 내의 모든 함수와 클래스를 호출합니다.
import 모듈이름

사용 예제 소스:

import math  # 수학 관련 함수와 상수를 제공하는 모듈

print(math.pi)       # 원주율: 3.141592653589793
print(math.sqrt(16)) # 제곱근: 4.0

 


 

3. 별칭 사용 (as)

  • 모듈 이름이 길거나, 짧게 표현하고 싶을 때 별칭(Alias)을 지정합니다.
import 모듈이름 as 별칭

사용 예제 소스:

import numpy as np  # Numpy를 np로 축약

array = np.array([1, 2, 3])
print(array)  # [1 2 3]

 


 

4. 특정 요소만 가져오기 (from ... import ...)

  • 모듈 전체가 아닌, 필요한 부분만 가져옵니다.
  • 호출할 때 모듈 이름을 생략할 수 있습니다.
from 모듈이름 import 요소

사용 예제 소스:

from math import pi, sqrt

print(pi)       # 3.141592653589793
print(sqrt(16)) # 4.0

 


 

5. 특정 요소를 별칭으로 가져오기

  • 가져온 요소에 별칭을 붙여 사용할 수 있습니다.
from 모듈이름 import 요소 as 별칭

사용 예제 소스:

from math import sqrt as square_root

print(square_root(25))  # 5.0

 


 

6. 모듈 내의 모든 요소 가져오기 (from ... import *)

  • 모듈의 모든 함수와 클래스를 가져옵니다.
  • 모듈 이름 없이 바로 사용할 수 있지만, 이름 충돌 가능성이 높기 때문에 권장 되는 방법은 아닙니다.
from 모듈이름 import *

사용 예제 소스:

from math import *

print(sin(0))  # 0.0
print(pi)      # 3.141592653589793

 


 

7. 패키지에서 하위 모듈 가져오기

  • 패키지는 여러 모듈을 포함하는 디렉토리입니다.
  • 특정 하위 모듈을 가져오려면 점(.) 표기법을 사용합니다.
import 패키지이름.모듈이름
from 패키지이름 import 모듈이름

사용 예제 소스:

# 패키지 내의 모듈 가져오기
import os.path

print(os.path.basename("/path/to/file"))  # "file"

 


 

8. 패키지에서 특정 요소 가져오기

  • 하위 모듈이나 함수, 클래스 등을 직접 가져올 수 있습니다.
from 패키지이름.모듈이름 import 요소

사용 예제 소스:

from os.path import basename

print(basename("/path/to/file"))  # "file"

 


 

9. 상대 경로로 모듈 가져오기 (패키지 내부)

  • 동일 패키지나 상위/하위 디렉토리에서 상대적으로 모듈을 가져옵니다.
  • 점(.)으로 경로를 표현합니다.
    • .: 현재 디렉토리
    • ..: 상위 디렉토리
from . import 모듈이름         # 현재 패키지 내의 모듈
from ..패키지이름 import 모듈이름 # 상위 패키지의 모듈

사용 예제 소스:

# 패키지 구조
# mypackage/
# ├── __init__.py
# ├── module_a.py
# └── module_b.py

# module_b에서 module_a 가져오기
from . import module_a

 


 

10. 사용자 정의 모듈 가져오기

  • 사용자가 직접 만든 .py 파일도 모듈로 가져올 수 있습니다.
  • 가져올 파일이 현재 작업 디렉토리 또는 PYTHONPATH에 있어야 합니다.

사용 예제 소스:

# mymodule.py
def greet(name):
    return f"Hello, {name}!"

# main.py
import mymodule

print(mymodule.greet("Alice"))  # "Hello, Alice!"

 

 

728x90