2016-07-04 1 views
-2

인 경우 내 파일에서 날짜를 가져 오는 데 약간의 문제가 있습니다.Python Datetime strptime ValueError : 형식이

날짜 문자열의 형식은 : "06/08/2016 #은 괄호를 참고

내 strptime 명령은 다음과 같습니다 date = datetime.datetime.strptime(text[0], '\"%m/%d/%Y').date()

하지만 난 오류로 다음 얻을 : 무슨

Traceback (most recent call last): 
    File "budget.py", line 20, in <module> 
    print datetime.datetime.strptime(text[0], "\"%m/%d/%Y") 
    File "/usr/local/lib/python2.7/_strptime.py", line 325, in _strptime 
    (data_string, format)) 
    ValueError: time data '"Date' does not match format '"%m/%d/%Y' 

확실하지 않음 잘못된. 날짜 시간이있는 대부분의 ValueErrors가 불일치 연도 한정자 (% y 및 % Y)로 인해 발생하기 때문에 단순하지 않다고 생각하지 마십시오. 누구든지 아이디어가 있습니까? 미리 감사드립니다. :) 나는 '\를 제거하지 않음으로써 오류가 발생 된 아래의 문자열의 표시,하지만 분명히 날짜 "'형식으로. 나는를 포함하는 I가 필요했을 것이라고 예상하고 있었다"는 답변으로


상관 없어! 모두에게 감사드립니다!

+0

역 슬래시가 기능을 망칠 것이라고 생각합니다. 'datetime.datetime.strptime (text [0], "% m/% d/% Y"). 날짜()'를 시도해보십시오! "괄호에 유의하십시오."라는 말의 의미가 확실하지 않습니다. –

+0

예! 문자열에 괄호가 있었으므로 이스케이프 처리가 필요할 것으로 예상했지만 분명히 그렇지 않았습니다. –

답변

2

오류 메시지가 문자열 데이터가 그대로

"Date 

및 항하지

"06/08/2016 

있음을 알려줍니다. 그렇지 않으면 코드가 작동합니다.

0

이렇게하면?

text = '"06/08/2016' 
format = '"%m/%d/%Y' 
date = datetime.datetime.strptime(text, format).date() 
+0

@wim 응답에 대한 평판이 충분하지 않으므로 읽으시기 바랍니다. 주요 문제는 적절한 날짜 문자열 대신 리터럴 '날짜'를 전달하는 것으로 보입니다.하지만 다른 문제가 날짜를 텍스트로 전달할 수 있다고 생각합니다. [0]. 첫 번째 문자? – dido