반응형
Notice
Recent Posts
Recent Comments
Link
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Archives
Today
Total
관리 메뉴

Learner's Log님의 블로그

파이썬 모듈과 패키지 본문

Python

파이썬 모듈과 패키지

Learner's Log 2025. 2. 9. 15:49

파이썬 모듈과 패키지

모듈이란?

파이썬에서 모듈(Module)이란 여러 개의 함수와 변수를 한 파일에 저장하여 재사용할 수 있도록 만든 코드 집합입니다.

모듈을 사용하는 이유

모듈을 활용하면 코드의 재사용성이 증가하고, 프로그램이 보다 구조적이고 가독성 있게 작성됩니다.

모듈 생성 및 호출

모듈은 단순히 .py 확장자를 가진 파일입니다. 예를 들어, 다음과 같은 파일을 생성할 수 있습니다.

# my_module.py
def greet(name):
    return f"안녕하세요, {name}님!"

pi = 3.141592

그리고 이를 다른 파일에서 import하여 사용할 수 있습니다.

# main.py
import my_module

print(my_module.greet("python"))
print(my_module.pi)

📌 모듈 불러오기

모듈을 불러오는 방법에는 여러 가지가 있습니다.

  • import 모듈명 : 전체 모듈을 불러옴
  • from 모듈명 import 변수, 함수 : 특정 함수나 변수만 불러옴
  • import 모듈명 as 별칭 : 모듈명을 별명으로 변경

📌 모듈명을 별명으로 선언

긴 모듈명을 줄여서 사용할 수 있도록 별명을 부여할 수 있습니다.

import my_module as mm

print(mm.greet("module"))
print(mm.pi)

📌 모듈을 직접 실행하는 경우와 임포트한 후 실행하는 경우

모듈이 직접 실행될 때만 특정 코드가 실행되도록 하기 위해 if __name__ == "__main__" 조건을 사용할 수 있습니다.

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

if __name__ == "__main__":
    print(greet("python"))

이 모듈을 다른 파일에서 import 하면 if __name__ == "__main__" 부분은 실행되지 않습니다.

📌 난수 발생 모듈

파이썬의 random 모듈은 다양한 난수를 생성하는 기능을 제공합니다.

📌 random 모듈의 함수와 사용

  • random.random() : 0.0 이상 1.0 미만의 실수 생성
  • random.randint(a, b) : a 이상 b 이하의 정수 생성
  • random.choice(리스트) : 리스트에서 랜덤으로 하나 선택
import random

print(random.random())  # 예: 0.7346
print(random.randint(1, 10))  # 예: 7
print(random.choice(["🍎", "🍌", "🍇"]))  # 예: 🍎

날짜 및 시간 관련 처리 모듈

datetime 모듈을 사용하면 현재 날짜와 시간을 가져오거나 포맷을 지정할 수 있습니다.

from datetime import datetime

now = datetime.now()
print(now.strftime("%Y-%m-%d %H:%M:%S"))

달력 생성 및 처리 모듈

calendar 모듈을 사용하면 특정 연도의 달력을 출력할 수 있습니다.

import calendar

print(calendar.month(2025, 2))  # 2025년 2월 달력 출력

패키지의 구조

패키지는 여러 개의 모듈을 하나의 디렉토리에 모아둔 구조입니다.

my_package/
    ├── __init__.py
    ├── module1.py
    ├── module2.py

패키지 사용하기

패키지를 사용하려면 import 패키지명.모듈명 형식으로 불러올 수 있습니다.

import my_package.module1

또는 __init__.py 파일을 활용하여 더욱 간단한 방식으로 패키지를 사용할 수도 있습니다.

반응형

'Python' 카테고리의 다른 글

음성데이터 K-fold  (0) 2025.03.25