Python

PYTHON - 예외처리와 모듈 (Chapter 7-37. 표준모듈)

Chansman 2025. 3. 14. 13:06

 

📚 Chapter 7-5. 표준 모듈

✅ 1. 표준 모듈이란?

  • 모듈: 여러 변수와 함수를 집합적으로 관리하는 단위.
  • 표준 모듈: 파이썬에서 기본적으로 제공하는 내장 모듈.

파이썬에서는 다양한 표준 모듈을 제공하여, 개발자가 손쉽게 기능을 활용할 수 있도록 지원합니다.


✅ 2. 모듈 사용 방법

  • import 키워드로 모듈을 불러와 사용할 수 있습니다.

📄 예시: math 모듈

math 모듈은 수학과 관련된 다양한 기능을 제공합니다.

# math 모듈 임포트
import math

print(math.sin(5))     # 5 라디안의 사인 값
print(math.cos(5))     # 5 라디안의 코사인 값
print(math.ceil(3.6))  # 3.6 이상의 가장 작은 정수 (올림)
print(math.floor(4.1)) # 4.1 이하의 가장 큰 정수 (내림)

출력 결과

-0.9589242746631385
0.28366218546322625
4
4

주요 함수

  • sin(x): 사인 값 계산
  • cos(x): 코사인 값 계산
  • tan(x): 탄젠트 값 계산
  • ceil(x): 올림
  • floor(x): 내림

✅ 3. from 구문으로 모듈 사용하기

  • 필요한 함수만 선택하여 불러올 수 있습니다.
from math import sin

result = sin(5)
print(result)

장점: 필요한 함수만 선택적으로 사용 가능하여 메모리 절약과 가독성이 향상됩니다.

📄 from ... import * 사용하기

from math import *

print(sin(5))
print(cos(5))
print(ceil(3.6))
print(floor(4.1))

주의: *로 불러오면 어떤 함수가 포함되어 있는지 파악이 어려울 수 있습니다.


✅ 4. as 구문으로 별칭 사용하기

  • 모듈명이 길거나 충돌을 피하고 싶을 때 사용합니다.
import math as m

print(m.sin(5))
print(m.ceil(3.6))

장점: 짧은 이름으로 더 편리하게 사용 가능!


✅ 5. os 모듈 (운영체제 관련 기능)

import os

print("현재 운영체제:", os.name)
print("현재 폴더:", os.getcwd())
print("현재 폴더 정보:", os.listdir())

디렉토리, 파일 생성/삭제

os.mkdir("oz")     # 디렉토리 생성
os.rmdir("oz")     # 디렉토리 삭제

with open("oz.txt", "w") as file:
    file.write("수강생 여러분 안녕하세요")

os.rename("oz.txt", "oz2.txt")  # 파일 이름 변경
os.remove("oz2.txt")            # 파일 삭제

TIP: 시스템 명령어 실행 (주의 필요!)

os.system("ls")  # macOS/Linux
os.system("dir") # Windows

✅ 6. datetime 모듈 (날짜 및 시간 관련 기능)

import datetime

now = datetime.datetime.now()
print(now.year, "년", now.month, "월", now.day, "일")
print(now.strftime("%Y-%m-%d %H:%M:%S"))

다양한 포맷 출력

output = now.strftime("%Y년 %m월 %d일 %H시 %M분 %S초")
print(output)

✅ 7. time 모듈 (시간 제어)

import time

print("3초 뒤에 메시지가 출력됩니다.")
time.sleep(3)
print("시간이 지났습니다!")

활용 예시: 게임 대기 시간, 주기적인 작업 처리 등


✅ 8. urllib 모듈 (URL 처리)

from urllib import request

target = request.urlopen("https://www.naver.com")
web_code = target.read()

print(web_code)

활용: 웹 크롤링, 데이터 가져오기 등


✅ 이해도 체크리스트

  1. 다음 코드의 출력 결과는 무엇인가요?
import math

print(math.ceil(2.3))
print(math.floor(2.7))

정답

  • ceil(2.3) → 3
  • floor(2.7) → 2
  1. 다음 코드를 실행했을 때 출력 결과는?
from math import cos, floor

print(cos(0))
print(floor(3.8))

정답

  • cos(0) → 1.0
  • floor(3.8) → 3
  1. 다음 코드를 실행하면 어떤 일이 발생하나요?
import os

os.mkdir("test_dir")
with open("test_dir/test_file.txt", "w") as file:
    file.write("Hello, World!")

print(os.listdir("test_dir"))
os.remove("test_dir/test_file.txt")
os.rmdir("test_dir")

정답

  • test_dir 폴더가 생성됩니다.
  • test_file.txt 파일이 생성되고 "Hello, World!"가 작성됩니다.
  • os.listdir()로 파일 목록을 확인합니다.
  • 파일과 폴더를 차례로 삭제합니다.

🔥 TIP

  • from ... import *보다 필요한 함수만 선택적으로 가져오는 것이 가독성과 성능에 유리합니다.
  • as 구문을 통해 긴 모듈명은 짧게 줄여서 편리하게 사용하세요!
  • os.system은 시스템 명령을 직접 실행하기 때문에 사용 시 주의가 필요합니다.

정리

  • 파이썬의 표준 모듈을 통해 복잡한 작업도 간단하게 처리할 수 있습니다.
  • 필요에 따라 적절한 모듈을 선택하여 효율적인 개발을 해보세요!