728x90
반응형
질문 : ISO 8601 datetime 문자열을 Python datetime 객체로 어떻게 변환합니까?
"2009-05-28T16 : 15 : 00"과 같은 형식의 datetime 문자열을 받고 있습니다 (이것은 ISO 8601입니다). 한 가지 hackish 옵션은 time.strptime
사용하여 문자열을 구문 분석하고 튜플의 처음 6 개 요소를 datetime 생성자에 전달하는 것입니다.
datetime.datetime(*time.strptime("2007-03-04T21:08:12", "%Y-%m-%dT%H:%M:%S")[:6])
나는 이것을하는 "더 깨끗한"방법을 찾을 수 없었다. 하나있어?
답변
시간대 처리 및 일반적으로 견고한 날짜 구문 분석을 위해 dateutil 라이브러리를 사용하는 것을 선호합니다. 2010-05-08T23:41:54.000Z
와 같은 ISO 8601
문자열을 얻으려면 특히 시간대가 포함되었는지 여부를 미리 알지 못했다면 strptime으로 구문 분석하는 데 즐거운 시간을 보낼 수 있습니다. pyiso8601
에는 사용하는 동안 발생한 몇 가지 문제 (트래커 확인)가 있으며 몇 년 동안 업데이트되지 않았습니다. 대조적으로 dateutil은 활성화되어 나를 위해 일했습니다.
import dateutil.parser
yourdate = dateutil.parser.parse(datestring)
출처 : https://stackoverflow.com/questions/969285/how-do-i-translate-an-iso-8601-datetime-string-into-a-python-datetime-object
728x90
반응형
'프로그래밍 언어 > Python' 카테고리의 다른 글
파이썬의 순서 집합 (0) | 2021.06.25 |
---|---|
사람들이 파이썬 스크립트의 첫 번째 줄에 #! / usr / bin / env python을 쓰는 이유 (0) | 2021.06.25 |
Python 객체가 "subscriptable" 여부가 의미하는 것 (0) | 2021.06.24 |
Python 함수가 예외를 발생시키는 지 테스트 하는 방법 (0) | 2021.06.24 |
Python3의 StringIO (0) | 2021.06.23 |