파이썬의 모듈(Module)과 패키지(Package)는 코드를 효율적으로 관리하고 재사용성을 높이는 데 필수적인 요소입니다.
오늘은 파이썬에서 모듈과 패키지를 사용하는 방법과 기본적인 활용법을 알아보겠습니다.
1. 모듈(Module)이란?
- 모듈은 파이썬 코드가 작성된 파일로, 하나의 .py 파일이 하나의 모듈입니다.
- 여러 함수를 한 파일에 정의해 다른 파일에서 재사용할 수 있습니다.
모듈 사용 예제
1. 모듈 생성
- 파일 이름 : my_module.py
# my_module.py
def greet(name):
return f"안녕하세요, {name}님!"
2. 모듈 가져오기
- 파일 이름 : main.py
# main.py
import my_module
print(my_module.greet("홍길동")) # 출력: 안녕하세요, 홍길동님!

2. 모듈 가져오는 다양한 방법
| import module | 모듈 전체 가져오기 | import math |
| from module import X | 모듈에서 특정 함수, 변수만 가져오기 | from math import sqrt |
| import module as alias | 모듈에 별칭(alias)을 지정해 간단히 사용 | import numpy as np |
| from module import * | 모듈 내 모든 함수와 변수를 가져오기 (권장하지 않음) | from math imprt * |
3. 내장 모듈 활용 예제
3.1 math 모듈
import math
print(math.sqrt(16)) # 출력: 4.0
print(math.pi) # 출력: 3.141592653589793

3.2 random 모듈
import random
print(random.randint(1, 10)) # 1부터 10 사이의 정수 랜덤 출력
print(random.choice(["a", "b", "c"])) # 리스트에서 랜덤 선택

3.3 datetime 모듈
from datetime import datetime
now = datetime.now()
print(now.strftime("%Y-%m-%d %H:%M:%S")) # 현재 날짜와 시간 출력

4. 패키지(Package)란?
- 패키지는 모듈을 디렉터리로 묶어 더 큰 단위로 관리할 수 있도록 만든 구조입니다.
- 패키지 디렉터리에는 반드시 __init__.py 파일이 포함되어야 합니다 (파이썬 3.3 이후 필수는 아님).
패키지 구조 예제
mypackage/
__init__.py
module1.py
module2.py
패키지 사용 예제
# mypackage/module1.py
def add(a, b):
return a + b
# main.py
from mypackage import module1
print(module1.add(2, 3)) # 출력: 5

5. 외부 패키지 설치 및 사용
5.1 pip 명령어로 설치
- pip는 파이썬의 패키지 관리자입니다.
- 외부 패키지 설치 예
pip install numpy
pip install pandas
5.2 외부 패키지 사용 예제
import numpy as np
arr = np.array([1, 2, 3, 4])
print(arr) # 출력: [1 2 3 4]

6. 연습 문제
1. 모듈 생성과 사용
- my_module.py라는 파일을 생성하고, 두 숫자를 더하는 함수 add(a, b)를 작성하세요.
- 이 모듈을 main.py에서 가져와 사용해 보세요.
# my_module.py
def add(a, b):
return a + b
# main.py
import my_module
result = my_module.add(5, 7)
print("두 숫자의 합:", result) # 출력: 두 숫자의 합: 12
- my_module.py에서 add함수를 정의하고 main.py에서 import로 모듈을 가져옵니다.
- my__module.add(5, 7)을 호출하면 12를 반환합니다.

2. math 모듈 활용
- 25의 제곱근을 구하세요.
- 원의 반지름이 5일 때, 원의 넓이를 구하세요.
import math
# 25의 제곱근
sqrt_value = math.sqrt(25)
print("25의 제곱근:", sqrt_value) # 출력: 25의 제곱근: 5.0
# 원의 넓이
radius = 5
circle_area = math.pi * (radius ** 2)
print("원의 넓이:", circle_area) # 출력: 원의 넓이: 78.53981633974483
- math.sqrt(25)는 25의 제곱근을 계산합니다. 결과는 5.0입니다.
- math.pi는 원주율 π의 값을 제공하며 이를 사용해 원의 넓이를 계산합니다.

3. random 모듈 활용
- 1부터 100 사이의 랜덤 정수를 생성하세요.
- 리스트 ["사과", "바나나", "체리"]에서 랜덤으로 하나를 선택하세요.
import random
# 1부터 100 사이의 랜덤 정수
random_int = random.randint(1, 100)
print("랜덤 정수:", random_int)
# 리스트에서 랜덤 선택
fruits = ["사과", "바나나", "체리"]
random_fruit = random.choice(fruits)
print("랜덤 선택된 과일:", random_fruit)
- random.ranint(1, 100)은 1부터 100 사이의 정수를 랜덤으로 반환합니다.
- random.choice(fruits)는 리스트 fruits)에서 랜덤으로 하나의 요소를 선택합니다.

7. 더 알아보기 (추천 링크)
6. Modules
If you quit from the Python interpreter and enter it again, the definitions you have made (functions and variables) are lost. Therefore, if you want to write a somewhat longer program, you are bett...
docs.python.org
파이썬 공식 문서 모듈과 패키지
[파이썬 기초] 조건문 완벽 정리 if, elif, else와 예제 코드
파이썬에서 조건문은 프로그램의 흐름을 제어하는 데 필수적인 기능입니다.특정 조건에 따라 코드를 실행하거나 다른 경로로 넘어가도록 설계할 수 있습니다.오늘은 파이썬 조건문인 if문, elif
creatolog.tistory.com
파이썬 조건문 완벽 정리
[파이썬 기초] 파일 입출력 완벽 정리 읽기, 쓰기, 추가
파이썬에서 파일 입출력은 데이터를 저장하고 불러올 때 사용하는 기본 기능입니다.오늘은 파일을 읽고 쓰는 방법, 파일 모드의 종류, 그리고 실습 예제를 통해 파일 입출력을 완벽히 이해해 보
creatolog.tistory.com
파이썬 파일 입출력 활용법
8. 결론
파이썬의 모듈과 패키지를 사용하면 코드를 효율적으로 관리하고
여러 프로젝트에서 재사용할 수 있습니다.
- 내장 모듈(math, random 등)과 외부 패키지(numpy, pandas)를 활용하여 생산성을 높이세요.
- 다음 글에서는 클래스와 객체지향 프로그래밍(OOP)을 다룰 예정입니다.
'Python' 카테고리의 다른 글
| Python으로 GUI 기반 티스토리 블로그 포스팅 개수 크롤링 및 관리 기능 구현 (1) | 2025.02.14 |
|---|---|
| 파이썬으로 티스토리 블로그 포스팅 개수 가져오기 : 4개 블로그 지원 및 합계 기능 추가 (0) | 2025.02.14 |
| [파이썬 기초] 딕셔너리 활용법 데이터 관리의 핵심 (0) | 2024.12.31 |
| [파이썬 기초] 파일 입출력 완벽 정리 읽기, 쓰기, 추가 (3) | 2024.12.23 |
| [파이썬 기초] 리스트와 튜플 활용법 (0) | 2024.12.21 |