이번 포스팅에서는 파이썬의 모듈과 패키지에 대해 알아보겠습니다. 파이썬은 코드의 재사용성과 유지 보수를 쉽게 하기 위해 모듈과 패키지를 제공합니다. 이 글을 통해 모듈과 패키지의 개념을 이해하고, 어떻게 활용할 수 있는지 예제를 통해 배워보겠습니다.
1.모듈 (Module)
1.1 모듈이란?
모듈은 파이썬 코드 파일로, 함수, 클래스, 변수 등을 포함할 수 있는 파일입니다. 모듈을 사용하면 관련된 기능을 그룹화하여 관리할 수 있습니다. 예를 들어, 수학 관련 함수들을 모아 하나의 모듈로 만들 수 있습니다.
1.2 모듈 만들기
모듈을 만들기 위해서는 새로운 파이썬 파일을 생성하면 됩니다. 예를 들어, my_module.py라는 파일을 만들어보겠습니다.
[예제]
# my_module.py
def greet(name):
return f"안녕하세요, {name}!"
PI = 3.14159
위 코드에서 greet 함수와 PI 변수를 정의했습니다. 이제 이 모듈을 다른 파일에서 사용할 수 있습니다.
1.3 모듈 사용하기
모듈을 사용하려면 import 문을 사용하여 해당 모듈을 불러옵니다. 아래는 main.py라는 파일에서 my_module을 사용하는 예제입니다.
[예제]
# main.py
import my_module
print(my_module.greet("철수")) # 안녕하세요, 철수!
print(my_module.PI) # 3.14159
2.패키지 (Package)
2.1 패키지가 무엇인가요?
패키지는 여러 모듈을 포함하는 디렉토리입니다. 패키지를 사용하면 관련된 모듈들을 그룹화하여 관리할 수 있습니다. 패키지를 정의할 때는 반드시 __init__.py라는 파일이 필요합니다. 이 파일은 패키지가 초기화될 때 실행됩니다.
2.2 패키지 만들기
새로운 디렉토리를 생성합니다. 예를 들어, my_package라는 디렉토리를 생성합니다.
그 안에 여러 모듈 파일을 생성합니다. 예를 들어, moduleA.py와 moduleB.py 파일을 생성합니다.
패키지를 초기화하는 __init__.py 파일을 생성합니다.
디렉토리 구조는 다음과 같습니다:
my_package/
__init__.py
moduleA.py
moduleB.py
각 파일에 코드를 작성해보겠습니다.
moduleA.py:
# my_package/moduleA.py
def hello():
return "Hello from Module A!"
moduleB.py:
# my_package/moduleB.py
def goodbye():
return "Goodbye from Module B!"
2.3 패키지 사용하기
패키지를 사용하려면 import 문을 사용합니다. 아래는 main.py 파일에서 my_package를 사용하는 예제입니다.
# main.py
from my_package import moduleA, moduleB
print(moduleA.hello()) # Hello from Module A!
print(moduleB.goodbye()) # Goodbye from Module B!
[모듈과 패키지를 활용한 예제]
이제 모듈과 패키지를 함께 사용하는 간단한 예제를 만들어 보겠습니다.
패키지 구조:
my_package/
__init__.py
math_utils.py
string_utils.py
코드 작성:
# my_package/math_utils.py
def add(a, b):
return a + b
def subtract(a, b):
return a - b
string_utils.py:
# my_package/string_utils.py
def concatenate(str1, str2):
return str1 + str2
def uppercase(str):
return str.upper()
main.py:
# main.py
from my_package import math_utils, string_utils
# 수학 연산
result_add = math_utils.add(5, 3)
result_subtract = math_utils.subtract(5, 3)
print(f"덧셈 결과: {result_add}") # 덧셈 결과: 8
print(f"뺄셈 결과: {result_subtract}") # 뺄셈 결과: 2
# 문자열 연산
result_concat = string_utils.concatenate("안녕하세요, ", "파이썬!")
result_upper = string_utils.uppercase("hello")
print(result_concat) # 안녕하세요, 파이썬!
print(f"대문자로 변환: {result_upper}") # 대문자로 변환: HELLO
3. 마치며
이제 우리는 파이썬의 모듈과 패키지에 대해 알아보았습니다. 모듈은 코드 파일로, 패키지는 여러 모듈을 포함하는 디렉토리입니다. 모듈과 패키지를 사용하면 코드를 더 효율적으로 관리하고 재사용할 수 있습니다.
파이썬의 모듈과 패키지를 잘 활용하여 여러분의 코드를 더 깔끔하고 효율적으로 만들어 보세요.
'IT프로그램 언어 > python' 카테고리의 다른 글
Python(예외처리) (2) | 2025.01.22 |
---|---|
Python(random모듈) (0) | 2025.01.21 |
Python(파일-읽기, 쓰기) (0) | 2025.01.21 |
Python(실행파일 만들기-PyInstaller사용법) (1) | 2025.01.20 |
Python(자료구조: 리스트, 튜플, 세트, 딕셔너리) (2) | 2025.01.19 |