본문 바로가기
5분 공부

[5분 공부] 모듈 (module)

by 멍선생 2022. 9. 23.
728x90

 

코딩을 하다보면, 작성한 코드가 점점 길어지거나, 공통적으로 쓸 만한 함수들이 자주 생겨나기 마련이다.

이런 부분을 처리하기 위해 다른 파일에 변수, 함수, 클래스 등을 작성하고 공통적으로 불러 쓸 수 있게 할 수 있다.

이를 모듈 이라고 한다.

모듈에 정보를 한번만 정의해 두면 여러 프로그램에 쉽게 가져다 쓸 수 있다.

 

파이썬 가장 위에 아래와 같이 정의 하는 것을 본 적이 있을 것이다.

모듈 안에 정의된 변수나 함수, 클래스를 호출하는 방법이다.

 

from 모듈 파일 이름 import 불러올 변수/함수/클래스

 

빠르게 예시로 알아보도록 하자.

먼저 모듈을 만들어 보자.

 

# calc.py

def sum(a, b):
    return a + b
    

def difference(a, b):
    return a - b
    

def product(a, b):
    return a * b
    

def square(a, b):
    return a / 3

 

코드를 메모장에 작성 후 .py (python file) 로 저장하면 된다.

ide를 사용하고 있다면 간편히 python file 생성 후 작성하면 된다.

 

다음으로 위 calc.py 모듈을 호출하여 사용하는 코드를 작성해 보도록 하자.

 

from calc import sum, difference, product, square

print(sum(1, 2))

print(difference(2, 3))

print(product(3, 4))

print(square(6, 2))

 

calc.py가 저장되어 있는 폴더로 이동 후

ide나 cmd에서 아래 코드를 작성하여 실행하면 결과를 얻을 수 있다.

 

모듈에 있는 특정 함수나 변수만 불러 쓸 예정이라면, 

해당하는 함수나 변수의 이름만 import 뒤에 써주면 된다.

 

from calc import sum

print(sum(1, 2))

print(difference(2, 3))

 

sum만 참조하였기 때문에 다른 함수들은 실행이 안됨을 볼 수 있다.

 

반응형

 

전체를 불러와서 사용하고 싶다면, 아래와같이 * 을 사용하여 전부 불러올 수 있다.

 

from calc import *

print(sum(1, 2))

print(difference(2, 3))

print(product(3, 4))

print(square(6, 2))

 

결과는 첫 번째 예시와 같다.

 

위와같이 * 로 불러올 수도 있지만, import 로 해결할 수도 있다.

대신 함수 앞에 import 한 모듈의 이름을 명시해주어야 한다.

 

import calc

#모듈이름.함수(변수 등등)
print(calc.sum(1, 2))

print(calc.difference(2, 3))

print(calc.product(3, 4))

print(calc.square(6, 2))

 

 

이상으로 모듈의 사용법에 대해 알아보았다.

모듈을 적절히 사용한다면, 코드가 깔끔해 지고 유지보수가 쉬워진다는 점이 있다.

알아두면 앞으로 코딩하는데 있어서 많은 도움이 될 것이다.

 

약간의 오류가 있을 수 있으므로 내용에 대한 피드백은 댓글로 부탁드립니다!

 

 

728x90
반응형

'5분 공부' 카테고리의 다른 글

[5분 공부] input 함수  (0) 2022.10.17
[5분 공부] randint, uniform 함수  (0) 2022.10.05
[5분 공부] break 와 continue  (0) 2022.09.09
[5분 공부] 조건문 (if)  (0) 2022.08.30
[5분 공부] 반복문 - 1, (while, for)  (0) 2022.08.19

댓글