현재시간 구하기
import datetime
d = datetime.datetime.now()
print (d)
2021-04-18 16:50:43.895283
날짜중 일부 추출
d = datetime.datetime.now()
print (d.year,'년 ', d.month,'월 ', d.day,' 일')
print (d.hour,'시 ',d.minute,'분 ',d.second,'초')
2021 년 4 월 18 일
16 시 58 분 38 초
strftime() 메소드로 원하는 날짜 형식대로 출력
포맷 코드 | 설명 | 예 |
%a | 요일을 짧게 표시합니다. | Sun |
%A | 요일을 길게 표시합니다. | Sunday |
%w | 요일을 숫자로 표시합니다. 일요일을 0부터 시작하여 토요일은 6입니다. | 0 |
%d | 날(day)을 출력합니다. 1부터 31까지가 있겠죠 | 18 |
%b | 월을 영어로 짧게 출력해줍니다. | Apr |
%B | 월을 영어로 길게 출력해줍니다. | April |
%m | 월을 숫자로 표현합니다. | 04 |
%y | 년을 짧게 숫자로 표시합니다 | 21 |
%Y | 년을 길게 숫자로 표시합니다. | 2021 |
%H | 시간을 24시간의 표현 방식(00-23)으로 숫자로 표시합니다. | 18 |
%I | 시간을 0-12시 표시 방법으로 표시합니다 | 6 |
%p | 오전(AM), 오후(PM)을 표시합니다. | PM |
%M | 분(0 - 59)을 표시합니다. | 38 |
%S | 초(0 - 59)를 표시합니다. | 55 |
%f | microsecond단위를 표시합니다. | 545433 |
%j | 일년중 몇번째일인지 나타냅니다. | 108 |
%U | 일년 중 몇번째 주 인지 나타내니다. 이 포맷에서 일요일은 일주일의 시작입니다. 일년은 52주, 53주입니다. | 108 |
%W | 일년 중 몇번째 주 인지 나타내는 것은 %U와 같지만 일주일의 시작을 월요일로 정합니다. | 108 |
%c | Local version의 날짜와 시간을 나타냅니다. | Sun Apr 18 17:26:26 2021 |
%x | Local version의 날짜만 나타냅니다. | 04/18/21 |
%X | Local version의 시간만 나타냅니다. | 17:26:26 |
datetime 연산
import datetime
birthday = datetime.datetime(1988,12,11)
now = datetime.datetime.now()
elapsed = now - birthday
print (elapsed)
11816 days, 17:39:16.585322
datetime을 이용해 시간, 날짜 더하고 빼기
import datetime
now = datetime.datetime.now()
now_after_777 = now + datetime.timedelta(days=777)
print(now_after_777) # 2021-04-14 21:15:54.891525
days 외에 seconds, microseconds, milliseconds, minutes, hours, weeks 도 가능