Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- 동적바인딩
- 인프런
- 기본클래스
- 제네릭프로그래밍
- OpenCV
- 점프투파이썬
- list comprehension
- 유도클래스
- 코드잇
- 상속
- 깊은복사
- 다형성
- C++
- 포인터
- 백준
- 참조자
- 코딩테스트
- STL
- 프로그래머스lv2
- 주피터
- 얕은복사
- OOP
- 람다식
- c++코딩테스트합격자되기
- 멤버함수로구현
- 11382번
- 연산자오버로딩
- 데이터사이언스
- python
- 스택
Archives
- Today
- Total
WjExplor Story
datetime 모듈의 timedelta 본문
`datetime` 모듈의 `timedelta`는 **두 날짜 또는 시간 사이의 '기간' 또는 '차이'**를 나타내는 객체입니다. 특정 시점(예: 2025년 9월 25일)이 아니라, **시간의 길이**를 표현할 때 사용합니다.
`timedelta`의 주요 특징 및 사용법
1. **기간 표현:**
* `timedelta` 객체는 `days`, `seconds`, `microseconds` 세 가지 내부 값으로 기간을 저장합니다.
* 생성 시에는 `weeks`, `hours`, `minutes`, `milliseconds` 등 다양한 단위를 사용할 수 있으며, 이들은 내부적으로 `days`, `seconds`, `microseconds`로 변환됩니다.
from datetime import timedelta
# 10일
delta1 = timedelta(days=10)
print(f"10일: {delta1}")
# 2시간 30분
delta2 = timedelta(hours=2, minutes=30)
print(f"2시간 30분: {delta2}")
# 1주 3일
delta3 = timedelta(weeks=1, days=3)
print(f"1주 3일: {delta3}")
2. **날짜/시간 계산:**
* `datetime` 또는 `date` 객체에 `timedelta`를 더하거나 빼서 미래 또는 과거의 날짜/시간을 계산할 수 있습니다.
from datetime import datetime, timedelta
now = datetime.now()
print(f"현재 시각: {now}")
# 5일 후
future_date = now + timedelta(days=5)
print(f"5일 후: {future_date}")
# 3시간 전
past_time = now - timedelta(hours=3)
print(f"3시간 전: {past_time}")
3. **두 날짜/시간 간의 차이 계산:**
* 두 `datetime` 또는 `date` 객체를 서로 빼면 그 결과로 `timedelta` 객체가 반환됩니다.
from datetime import date
today = date.today()
yesterday = date(2025, 9, 24) # 어제 날짜 (예시)
diff = today - yesterday
print(f"오늘과 어제의 차이: {diff}")
print(f"차이(일): {diff.days}") # 차이를 일 단위로 접근
4. **`timedelta` 객체 간의 연산:**
* `timedelta` 객체끼리 더하거나 빼거나, 정수/실수를 곱하거나 나눌 수 있습니다.
from datetime import timedelta
one_day = timedelta(days=1)
two_hours = timedelta(hours=2)
# 더하기
sum_delta = one_day + two_hours
print(f"1일 + 2시간: {sum_delta}")
# 곱하기
five_days = one_day * 5
print(f"1일 * 5: {five_days}")
요약
`timedelta`는 `datetime` 모듈에서 시간의 '길이'나 '간격'을 다룰 때 사용하는 핵심적인 객체입니다. 날짜/시간 계산, 두 시점 간의 차이 계산 등 다양한 시간 관련 작업에 활용됩니다.
'Python > Python : Code Study' 카테고리의 다른 글
| 리스트를 문자열 길이에 따라 정렬하기 (0) | 2025.09.26 |
|---|---|
| 두 리스트를 이용해 딕셔너리 생성 (0) | 2025.09.25 |
| 리스트 중첩 (0) | 2025.09.25 |
| *args의 역할 (0) | 2025.09.25 |
| 파이썬 리스트 컴프리헨션 (List Comprehension) (0) | 2025.09.25 |