from datetime import datetime today = datetime.now() print(today) print(today.year) print(today.month) print(today.day) print(today.hour) print(today.minute) print(today.second) print('%s-%s-%s'%(today.year, today.month, today.day)) C:\Python37\python.exe C:/Python_Work/test.py 2019-12-18 09:18:26.428767 2019 12 18 9 18 26 2019-12-18 |
출처 : https://docs.python.org/ko/3/library/datetime.html
strftime()
과 strptime()
동작
date
, datetime
및 time
객체는 모두 strftime(format)
메서드를 지원하여, 명시적 포맷 문자열로 제어된 시간을 나타내는 문자열을 만듭니다.
반대로, datetime.strptime()
클래스 메서드는 날짜와 시간을 나타내는 문자열과 해당 포맷 문자열로 datetime
객체를 만듭니다.
아래 표는 strftime()
과 strptime()
의 고수준 비교를 제공합니다:
|
| |
---|---|---|
용도 | 주어진 포맷에 따라 객체를 문자열로 변환합니다 | 주어진 해당 포맷으로 문자열을 |
메서드의 형 | 인스턴스 메서드 | 클래스 메서드 |
메서드가 제공되는 곳 | ||
서명 |
|
|
strftime()
과 strptime()
포맷 코드
다음은 1989 C 표준이 요구하는 모든 포맷 코드 목록이며, 표준 C 구현이 있는 모든 플랫폼에서 작동합니다.
지시자 | 의미 | 예 | 노트 |
---|---|---|---|
| 요일을 로케일의 축약된 이름으로. | Sun, Mon, …, Sat (en_US); So, Mo, …, Sa (de_DE) | (1) |
| 요일을 로케일의 전체 이름으로. | Sunday, Monday, …, Saturday (en_US); Sonntag, Montag, …, Samstag (de_DE) | (1) |
| 요일을 10진수로, 0은 일요일이고 6은 토요일입니다. | 0, 1, …, 6 | |
| 월중 일(day of the month)을 0으로 채워진 10진수로. | 01, 02, …, 31 | (9) |
| 월을 로케일의 축약된 이름으로. | Jan, Feb, …, Dec (en_US); Jan, Feb, …, Dez (de_DE) | (1) |
| 월을 로케일의 전체 이름으로. | January, February, …, December (en_US); Januar, Februar, …, Dezember (de_DE) | (1) |
| 월을 0으로 채워진 10진수로. | 01, 02, …, 12 | (9) |
| 세기가 없는 해(year)를 0으로 채워진 10진수로. | 00, 01, …, 99 | (9) |
| 세기가 있는 해(year)를 10진수로. | 0001, 0002, …, 2013, 2014, …, 9998, 9999 | (2) |
| 시(24시간제)를 0으로 채워진 십진수로. | 00, 01, …, 23 | (9) |
| 시(12시간제)를 0으로 채워진 십진수로. | 01, 02, …, 12 | (9) |
| 로케일의 오전이나 오후에 해당하는 것. | AM, PM (en_US); am, pm (de_DE) | (1), (3) |
| 분을 0으로 채워진 십진수로. | 00, 01, …, 59 | (9) |
| 초를 0으로 채워진 10진수로. | 00, 01, …, 59 | (4), (9) |
| 마이크로초를 왼쪽에 0으로 채워진 십진수로. | 000000, 000001, …, 999999 | (5) |
|
| (비어 있음), +0000, -0400, +1030, +063415, -030712.345216 | (6) |
| 시간대 이름 (객체가 나이브하면 빈 문자열). | (비어 있음), UTC, EST, CST | |
| 연중 일(day of the year)을 0으로 채워진 십진수로. | 001, 002, …, 366 | (9) |
| 연중 주 번호(일요일이 주의 시작)를 0으로 채워진 10진수로. 첫 번째 일요일에 선행하는 새해의 모든 날은 주 0으로 간주합니다. | 00, 01, …, 53 | (7), (9) |
| 연중 주 번호(월요일이 주의 시작)를 십진수로. 첫 번째 월요일에 선행하는 새해의 모든 말은 주 0으로 간주합니다. | 00, 01, …, 53 | (7), (9) |
| 로케일의 적절한 날짜와 시간 표현. | Tue Aug 16 21:30:00 1988 (en_US); Di 16 Aug 21:30:00 1988 (de_DE) | (1) |
| 로케일의 적절한 날짜 표현. | 08/16/88 (None); 08/16/1988 (en_US); 16.08.1988 (de_DE) | (1) |
| 로케일의 적절한 시간 표현. | 21:30:00 (en_US); 21:30:00 (de_DE) | (1) |
| 리터럴 | % |
C89 표준에서 요구하지 않는 몇 가지 추가 지시자가 편의상 포함되어 있습니다. 이 파라미터들은 모두 ISO 8601 날짜 값에 해당합니다.
지시자 | 의미 | 예 | 노트 |
---|---|---|---|
| ISO 주( | 0001, 0002, …, 2013, 2014, …, 9998, 9999 | (8) |
| ISO 8601 요일을 10진수로, 1은 월요일입니다. | 1, 2, …, 7 | |
| ISO 8601 주를 월요일을 주의 시작으로 하는 십진수로. 주 01은 1월 4일을 포함하는 주입니다. | 01, 02, …, 53 | (8), (9) |
strftime()
메서드와 함께 사용될 때 모든 플랫폼에서 사용할 수 있는 것은 아닙니다. ISO 8601 연도와 ISO 8601 주 지시자는 위의 연도 및 주 번호 지시자와 교환할 수 없습니다. 불완전하거나 모호한 ISO 8601 지시자로 strptime()
을 호출하면 ValueError
가 발생합니다.
파이썬이 플랫폼 C 라이브러리의 strftime()
함수를 호출하고, 플랫폼 변형이 일반적이기 때문에, 지원되는 전체 포맷 코드 집합은 플랫폼에 따라 다릅니다. 여러분의 플랫폼에서 지원되는 모든 포맷 코드를 보려면, strftime(3) 설명서를 참조하십시오.
버전 3.6에 추가: %G
, %u
및 %V
가 추가되었습니다.
'::: 오픈소스 ::: > Python' 카테고리의 다른 글
파이참 디폴트 키맵 - 한글버전 (0) | 2019.12.16 |
---|