Python에서는 날짜와 시간을 표현하기 위해 datetime 라이브러리를 사용합니다.
아래와 같은 항목들을 다룹니다.
Year | Month | Day | Hour | Minute | Second | Microsecond |
함수 | 내용 | 사용법 |
datetime.datetime.now() | 현재 시간 | datetime.datetime.now() |
datetime.date() | 2021년 3월 1일 | datetime.date(2021, 3, 1) |
datetime.time() | 15시 30분 00초 | datetime.time(15, 30, 00) |
datetime.datetime() | 2021년 3월 1일 15시 30분 00초 | datetime.datetime(2021, 3, 1, 15, 30, 00) |
weekday() | 요일을 0 ~ 6 숫자로 표현합니다. 0 : 월요일 |
datetime.datetime.now().weekday() |
strftime() | 시간을 지정한 format으로 보여줌 | datetime.dattime.now().strftime('%Y-%m-%d %a %p %H:%M:%S') |
아래와 같은 결과를 얻을 수 있습니다.
import datetime
d = datetime.date(2021, 3, 1)
print(d)
print(d.year, d.month, d.day)
t = datetime.time(14, 55, 00)
print(t)
print(t.hour, t.minute, t.second)
dt = datetime.datetime(2021, 3, 1, 14, 55, 00)
print(dt)
print(dt.year, dt.hour)
time_now = datetime.datetime.now()
print(time_now)
str_time = time_now.strftime('%Y-%m-%d %a %p %H:%M:%S')
print(str_time)
######
2021-03-01
2021 3 1
14:55:00
14 55 0
2021-03-01 14:55:00
2021 14
2021-03-01 15:37:42.540496
2021-03-01 Mon PM 15:37:42
strftime() 에서 사용할 수 있는 포맷은 각각 아래와 같습니다.
- docs.python.org/ko/3/library/datetime.html#strftime-and-strptime-format-codes
지시자 | 의미 | 예 | 노트 |
%a |
요일을 로케일의 축약된 이름으로. |
Sun, Mon, …, Sat (en_US); So, Mo, …, Sa (de_DE) |
(1) |
%A |
요일을 로케일의 전체 이름으로. |
Sunday, Monday, …, Saturday (en_US); Sonntag, Montag, …, Samstag (de_DE) |
(1) |
%w |
요일을 10진수로, 0은 일요일이고 6은 토요일입니다. |
0, 1, …, 6 |
|
%d |
월중 일(day of the month)을 0으로 채워진 10진수로. |
01, 02, …, 31 |
(9) |
%b |
월을 로케일의 축약된 이름으로. |
Jan, Feb, …, Dec (en_US); Jan, Feb, …, Dez (de_DE) |
(1) |
%B |
월을 로케일의 전체 이름으로. |
January, February, …, December (en_US); Januar, Februar, …, Dezember (de_DE) |
(1) |
%m |
월을 0으로 채워진 10진수로. |
01, 02, …, 12 |
(9) |
%y |
세기가 없는 해(year)를 0으로 채워진 10진수로. |
00, 01, …, 99 |
(9) |
%Y |
세기가 있는 해(year)를 10진수로. |
0001, 0002, …, 2013, 2014, …, 9998, 9999 |
(2) |
%H |
시(24시간제)를 0으로 채워진 십진수로. |
00, 01, …, 23 |
(9) |
%I |
시(12시간제)를 0으로 채워진 십진수로. |
01, 02, …, 12 |
(9) |
%p |
로케일의 오전이나 오후에 해당하는 것. |
AM, PM (en_US); am, pm (de_DE) |
(1), (3) |
%M |
분을 0으로 채워진 십진수로. |
00, 01, …, 59 |
(9) |
%S |
초를 0으로 채워진 10진수로. |
00, 01, …, 59 |
(4), (9) |
%f |
마이크로초를 왼쪽에 0으로 채워진 십진수로. |
000000, 000001, …, 999999 |
(5) |
%z |
±HHMM[SS[.ffffff]] 형태의 UTC 오프셋 (객체가 나이브하면 빈 문자열). |
(비어 있음), +0000, -0400, +1030, +063415, -030712.345216 |
(6) |
%Z |
시간대 이름 (객체가 나이브하면 빈 문자열). |
(비어 있음), UTC, GMT |
(6) |
%j |
연중 일(day of the year)을 0으로 채워진 십진수로. |
001, 002, …, 366 |
(9) |
%U |
연중 주 번호(일요일이 주의 시작)를 0으로 채워진 10진수로. 첫 번째 일요일에 선행하는 새해의 모든 날은 주 0으로 간주합니다. |
00, 01, …, 53 |
(7), (9) |
%W |
연중 주 번호(월요일이 주의 시작)를 십진수로. 첫 번째 월요일에 선행하는 새해의 모든 말은 주 0으로 간주합니다. |
00, 01, …, 53 |
(7), (9) |
%c |
로케일의 적절한 날짜와 시간 표현. |
Tue Aug 16 21:30:00 1988 (en_US); Di 16 Aug 21:30:00 1988 (de_DE) |
(1) |
%x |
로케일의 적절한 날짜 표현. |
08/16/88 (None); 08/16/1988 (en_US); 16.08.1988 (de_DE) |
(1) |
%X |
로케일의 적절한 시간 표현. |
21:30:00 (en_US); 21:30:00 (de_DE) |
(1) |
%% |
리터럴 '%' 문자. |
% |
'프로그래밍 언어 > Python' 카테고리의 다른 글
Python 표준 라이브러리 (random) (0) | 2021.03.07 |
---|---|
Python 표준 라이브러리 (sys) (0) | 2021.03.07 |
Python 표준 라이브러리 (디렉토리(폴더) -directory(folder)-, os, glob) (0) | 2021.03.01 |
PyCharm의 Python console(파이썬 콘솔) 한글 깨짐 문제 해결 (0) | 2021.03.01 |
Python 표준 라이브러리 (파일 -file-) (0) | 2021.03.01 |