English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이 문서에서는 date, time, datetime 객체를 동등한 문자열로 변환하는 방법을 예제를 통해 배웁니다.
strftime() 메서드를 사용하여date,time또는datetime객체는 날짜와 시간을 나타내는 문자열을 반환합니다.
아래의 프로그램은 datetime을 포함한 현재 날짜와 시간의 객체를 다른 형식의 문자열로 변환합니다.
from datetime import datetime now = datetime.now() # 현재의 날짜와 시간 year = now.strftime("%Y") print("년:", year) month = now.strftime("%m") print("월:", month) day = now.strftime("%d") print("일:", day) time = now.strftime("%H:%M:%S") print("시간:", time) date_time = now.strftime("%m")/%d/d = date_time.strftime("%Y, %H:%M:%S") print("날짜와 시간:",date_time)
프로그램을 실행할 때, 다음과 같은 출력이 나타납니다:
년: 2020 월: 04 일: 13 시간: 17:35:22 날짜와 시간: 04/13/2020, 17:35:22
여기서year,day,time와date_time는 문자열이고now는 datetime 객체입니다.
위 프로그램에서 %Y, %m, %d 등은 포맷 코드입니다. strftime() 메서드는 하나 이상의 포맷 코드를 파라미터로 받아 이에 따라 포맷된 문자열을 반환합니다.
우리는 datetime 모듈에서 클래스를 가져왔습니다. 이는 datetime 클래스의 객체가 strftime() 메서드에 접근할 수 있기 때문입니다.
datetime는 현재 날짜와 시간의 객체를 저장합니다.now변수에.
strftime() 메서드는 포맷된 문자열을 생성할 수 있습니다.
strftime() 메서드에 전달하는 문자열은 여러 형식 코드가 포함될 수 있습니다.
from datetime import datetime timestamp = 1578797322 date_time = datetime.fromtimestamp(timestamp) print("날짜 시간 객체:", date_time) d = date_time.strftime("%m/%d/d = date_time.strftime("%Y, %H:%M:%S") print("출력 2:", d) d = date_time.strftime("%d %b, %Y") print("출력 3:", d) d = date_time.strftime("%d %B, %Y") print("출력 4:", d) d = date_time.strftime("%I%p") print("출력 5:", d)
프로그램을 실행할 때, 출력은 다음과 같습니다:
날짜 시간 객체: 2020-01-12 10:48:42 출력 2: 01/12/2020, 10:48:42 출력 3: 12 Jan, 2020 출력 4: 12 January, 2020 출력 5: 10AM
아래 표는 strftime() 메서드에 전달할 수 있는 모든 코드를 나열합니다.
명령 | 의미 | 예를 들어 |
%a | 주중 일의 이름의 약자. | Sun, Mon, ... |
%A | 주중 일의 전체 이름. | Sunday, Monday, .. |
%w | 주중 일을 십진수로 표현. | 0,1,...,6 |
%d | 월의 일, 0으로 채워진 십진수로 표현. | 01,02,...,31 |
%-d | 십진수로 표현된 월의 일. | 1,2,...,30 |
%b | 월의 약자. | Jan, Feb, ..., Dec |
%B | 전체 월 이름. | January, February, ... |
%m | 월이 0으로 채워진 십진수. | 01、02,...,12 |
%-m | 십진수로 표현된 월. | 1,2,...,12 |
%y | 세기가 없는 연도, 0으로 채워진 십진수. | 00、01,...,99 |
%-y | 세기가 없는 연도로 십진수로 표현. | 0,1,...,99 |
%Y | 세기로 십진수로 표현된 연도. | 2013、2019등 |
%H | 시간(2424시간제), 0으로 채워진 십진수. | 00、01,...,23 |
%-H | 시간(24시간제) 십진수로 표시됨. | 0,1,...,23 |
%I | 시간(1224시간제), 0으로 채워진 십진수. | 01、02,...,12 |
%-I | 시간(12시간제) 십진수로 표시됨. | 1 2 2 |
%p | 언어 환경의 오전 또는 오후. | AM,PM |
%M | 분, 0으로 채워진 십진수. | 00、01,...,59 |
%-M | 십진수로 표시됨. | 0,1,...,59 |
%S | 두 번째로 0으로 채워진 십진수. | 00、01,...,59 |
%-S | 두 번째 십진수. | 0,1,...,59 |
%f | マイ크로초, 십진수로 표시됨, 왼쪽에 0으로 채워짐. | 000000-999999 |
%z | UTC 이동량, 형식은+ HHMM 또는-HHMM。 | |
%Z | 지역 이름. | |
%j | 연도 중 몇 번째 날, 0으로 채워진 십진수로 표시됨. | 001,002,...,366 |
%-j | 연도 중 몇 번째 날, 십진수로 표시됨. | 1,2,...,366 |
%U | 연도 중 몇 번째 주(일요일이 주의 첫 번째 날로 간주됨). 첫 번째 일요일 이전의 새 연도의 모든 날은 0번째 주에 간주됩니다. | 00、01,...,53 |
%W | 연도 중 몇 번째 주(월요일이 주의 첫 번째 날로 간주됨). 첫 번째 월요일 이전의 새 연도의 모든 날은 0번째 주에 간주됩니다. | 00、01,...,53 |
%c | 언어 환경에 적합한 날짜와 시간 표시. | Mon Sep 30 07:06:05 2019 |
%x | 언어 환경에 적합한 날짜 표시 형식. | 13/9/30 |
%X | 언어 환경에 적합한 시간 표시 형식. | 07:06:05 |
%% | 문자 "%" 문자. | % |
from datetime import datetime timestamp = 1578797322 date_time = datetime.fromtimestamp(timestamp) d = date_time.strftime("%c") print("출력 1:", d) d = date_time.strftime("%x") print("출력 2:", d) d = date_time.strftime("%X") print("출력 3:", d)
프로그램을 실행할 때, 출력은 다음과 같습니다:
출력 1: Sun Jan 12 10:48:42 2020 출력 2: 01/12/20 출력 3: 10:48:42
형식 코드 %c, %x 및 %X는 언어 환경에 적합한 날짜와 시간 표시를 위해 사용됩니다.
또한 확인해 주시기 바랍니다Python strptime()strptime() 메서드는 문자열에서 datetime 객체를 생성합니다.