답변:
직접 관련된 질문 :
당신이 가지고 있다면
datetime.datetime.strptime("2015-02-24T13:00:00-08:00", "%Y-%B-%dT%H:%M:%S-%H:%M").date()
그리고 당신은 얻는다 :
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/_strptime.py", line 308, in _strptime
format_regex = _TimeRE_cache.compile(format)
File "/usr/local/lib/python2.7/_strptime.py", line 265, in compile
return re_compile(self.pattern(format), IGNORECASE)
File "/usr/local/lib/python2.7/re.py", line 194, in compile
return _compile(pattern, flags)
File "/usr/local/lib/python2.7/re.py", line 251, in _compile
raise error, v # invalid expression
sre_constants.error: redefinition of group name 'H' as group 7; was group 4
그리고 당신은 시도했다 :
<-24T13:00:00-08:00", "%Y-%B-%dT%HH:%MM:%SS-%HH:%MM").date()
그러나 여전히 위의 역 추적을 얻습니다.
대답:
>>> from dateutil.parser import parse
>>> from datetime import datetime
>>> parse("2015-02-24T13:00:00-08:00")
datetime.datetime(2015, 2, 24, 13, 0, tzinfo=tzoffset(None, -28800))
게으르고 문자열 리터럴과 싸우고 싶지 않다면 parser
모듈 과 함께 갈 수 있습니다 .
from dateutil import parser
dt = parser.parse("Jun 1 2005 1:33PM")
print(dt.year, dt.month, dt.day,dt.hour, dt.minute, dt.second)
>2005 6 1 13 33 0
그냥 보조 노트는 우리가 일치하려고하는 등, any
캐릭터 라인 표현을, 그것보다 느린 10 배입니다strptime
Monday, June 03, 2019
"24052010"과 같은 날짜 문자열이 있고 이에 대한 날짜 개체를 원합니다.
from datetime import datetime
cus_date = datetime.strptime("24052010", "%d%m%Y").date()
이 cus_date는 날짜 객체를 제공합니다.
이것을 사용하여 날짜 객체에서 날짜 문자열을 검색 할 수 있습니다.
cus_date.strftime("%d%m%Y")
1900
. '2902'와 같이 2 월 날짜를 구문 분석 할 때 문제가 발생합니다. 이 오류가 발생ValueError: day is out of range for month
합니다. 구문 분석하는 동안 기본 연도를 어떻게 설정할 수 있는지 잘 모르겠습니다.