""" 시간 표시 헬퍼. 여러 모듈에서 `f"{h}시간 {m}분"` 패턴을 중복하던 것을 단일 함수로. """ from __future__ import annotations def format_hours_minutes(total_minutes: int, *, omit_zero_minutes: bool = False) -> str: """분을 "X시간 Y분" 형식으로. Args: total_minutes: 총 분 (음수 가능 — 절댓값 표시) omit_zero_minutes: True면 "X시간"처럼 0분 생략 Examples: >>> format_hours_minutes(90) '1시간 30분' >>> format_hours_minutes(60, omit_zero_minutes=True) '1시간' >>> format_hours_minutes(45) '0시간 45분' >>> format_hours_minutes(45, omit_zero_minutes=True) '45분' """ minutes = abs(int(total_minutes)) h, m = divmod(minutes, 60) if omit_zero_minutes: if h == 0: return f"{m}분" if m == 0: return f"{h}시간" return f"{h}시간 {m}분"