Python 06 - Module & Package

Kjjedd·2025년 12월 29일

Python

목록 보기
6/10
post-thumbnail

모듈과 패키지

프로그램이 커질수록 하나의 파일에 모든 코드를 작성하는 방식은 한계에 부딪힌다.
이때 등장하는 개념이 모듈(Module)패키지(Package)다.

모듈과 패키지는 코드를 재사용하고, 구조화하고, 관리 가능하게 만드는 핵심 도구다.
실무에서는 이 개념을 모르면 프로젝트를 제대로 시작하는 것조차 어렵다.


🎯 왜 모듈과 패키지를 배워야 할까?

  • 이미 잘 만들어진 코드를 다시 만들 필요가 없다
  • 기능별로 파일을 나눠 유지보수가 쉬워진다
  • 여러 사람이 동시에 작업할 수 있다
  • 외부 라이브러리를 안전하게 관리할 수 있다

실무에서는 하나의 프로젝트에 수십 개 이상의 외부 라이브러리가 사용된다.
이를 제대로 관리하려면 import, pip, 가상환경까지 함께 이해해야 한다.


1️⃣ import란 무엇인가?

import 는 영어로 “가져오다”라는 뜻이다.
다른 파일이나 다른 사람이 만든 코드를 현재 코드로 불러오는 역할을 한다.

1-1. 기본 import


import math

print(math.sqrt(16))  # 4.0
print(math.pi)        # 3.141592...

이 방식은 모듈 전체를 가져오는 방식이며,
사용할 때 반드시 모듈명.기능 형태로 접근해야 한다.


1-2. 특정 기능만 import


from math import sqrt, pi

print(sqrt(16))
print(pi)

자주 사용하는 기능만 가져올 때 유용하다.
단, 이름 충돌 위험이 있으므로 남용은 금물이다.


1-3. 별명(alias) 사용하기


import datetime as dt

today = dt.date.today()
print(today)

이 방식은 실무에서 매우 흔하게 사용된다.


import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

이 별명들은 사실상 업계 표준이다.


2️⃣ 모듈 vs 패키지 vs 라이브러리

용어 설명 예시
모듈(Module) 하나의 .py 파일 math.py
패키지(Package) 모듈을 모아둔 폴더 requests
라이브러리(Library) 패키지들의 집합 (넓은 의미) pandas, django

3️⃣ 표준 라이브러리와 외부 라이브러리

3-1. 표준 라이브러리

Python을 설치하면 기본으로 제공되는 라이브러리들이다.
별도의 설치 없이 바로 사용할 수 있다.


import os
import sys
import json
import datetime
import random

3-2. 외부 라이브러리

다른 개발자가 만든 라이브러리로,
pip를 통해 설치해야 사용 가능하다.


import requests
import pandas
import boto3

만약 아래와 같은 에러가 발생한다면,


ModuleNotFoundError: No module named 'requests'

해당 라이브러리가 설치되지 않았다는 뜻이다.


4️⃣ pip: 패키지 설치 도구

pip는 Python Package Installer의 약자다.

4-1. 기본 명령어


pip install requests
pip install requests==2.28.0
pip uninstall requests
pip list
pip show requests

4-2. requirements.txt

실무에서는 패키지 목록을 파일로 관리한다.


pip freeze > requirements.txt
pip install -r requirements.txt

requests==2.28.0
pandas==2.0.0
boto3==1.26.0

버전을 고정하지 않으면 환경 차이로 인한 오류가 발생하기 쉽다.


5️⃣ 가상환경(venv)이 필요한 이유

프로젝트마다 필요한 라이브러리 버전은 다를 수 있다.
하나의 Python 환경에 모두 설치하면 충돌이 발생한다.

이를 해결하는 방법이 가상환경이다.


6️⃣ 가상환경 사용법

6-1. 가상환경 생성


python -m venv venv

6-2. 가상환경 활성화


# Windows
venv\Scripts\activate

# Mac / Linux
source venv/bin/activate

6-3. 비활성화


deactivate

7️⃣ 실무 표준 워크플로우

  1. 프로젝트 폴더 생성
  2. 가상환경 생성 및 활성화
  3. 필요한 패키지 설치
  4. requirements.txt 생성
  5. 개발 시작

mkdir my_project
cd my_project
python -m venv venv
source venv/bin/activate
pip install requests pandas
pip freeze > requirements.txt

✅ 핵심 요약

  • 모듈은 하나의 파일이다
  • 패키지는 모듈을 묶은 폴더다
  • pip는 외부 패키지를 설치한다
  • venv는 프로젝트별 환경을 분리한다
  • requirements.txt는 환경 재현의 핵심이다

profile
Gongbuhaja

0개의 댓글