레슨 3 / 9·15분
함수와 모듈
함수 정의하기
Python에서 함수는 def 키워드로 정의합니다. 기본값 매개변수, 가변 인자(*args), 키워드 인자(**kwargs)를 지원합니다.
python
# 기본 함수
def greet(name, greeting="안녕하세요"):
return f"{greeting}, {name}님!"
print(greet("영희")) # 안녕하세요, 영희님!
print(greet("철수", "반갑습니다")) # 반갑습니다, 철수님!
# 가변 인자
def total(*numbers):
return sum(numbers)
print(total(1, 2, 3, 4)) # 10
# 람다 함수
square = lambda x: x ** 2
print(square(5)) # 25
# 정렬에 활용
students = [("김", 85), ("이", 92), ("박", 78)]
students.sort(key=lambda s: s[1], reverse=True)
print(students) # [('이', 92), ('김', 85), ('박', 78)]모듈과 import
Python은 풍부한 표준 라이브러리를 제공합니다. import로 모듈을 불러와 사용할 수 있으며, 직접 모듈을 만들 수도 있습니다.
python
# 표준 라이브러리 활용
import math
print(math.sqrt(16)) # 4.0
print(math.pi) # 3.141592653589793
from datetime import datetime
now = datetime.now()
print(now.strftime("%Y-%m-%d %H:%M"))
import random
print(random.randint(1, 100)) # 1~100 사이 랜덤 정수
# json 모듈
import json
data = {"name": "Python", "version": 3.12}
json_str = json.dumps(data, ensure_ascii=False)
print(json_str) # {"name": "Python", "version": 3.12}- •
import math— 모듈 전체를 가져옴 - •
from os import path— 특정 요소만 가져옴 - •
import numpy as np— 별칭(alias)을 붙여 가져옴 - •
if __name__ == "__main__":— 직접 실행 시에만 동작하는 코드 블록
💡
Python 파일 하나가 곧 모듈입니다. utils.py를 만들면 다른 파일에서 import utils로 사용할 수 있습니다.