2013-09-28 1 views
-3

이 날짜 포맷에 대한 내 코드입니다 :파이썬에서 날짜를 포맷 할 때 오류가 발생합니다. 그 이유는 무엇입니까?

def updateUserDBDates(): 
    global userDB, currentDate, previousDate, changeInDate 

    index = 0 
    index2 = 0 

    userDB[1] = datetime.strptime("%d-%m-%Y", userDB[0]) 
    userDB[0] = datetime.today().strftime("%d-%m-%Y") 

    saveData() 

    currentDate = userDB[0] 
    previousDate = userDB[1] 
    changeInDate = currentDate - previousDate 

와 나는이 오류를 얻을 :

내가 모든 것을이 오류의 원인이되는, 잘 작동합니다 볼 수있는에서
File "/home/nathan/Documents/project001/programFiles/Project 001.py", line 170, in updateUserDBDates 
    userDB[1] = datetime.strptime("%d-%m-%Y", userDB[0]) 
    File "/usr/lib/python2.7/_strptime.py", line 325, in _strptime 
    (data_string, format)) 
ValueError: time data '%d-%m-%Y' does not match format '28-09-2013' 

어떻게 내가 수를 쉽게 고쳐?

+2

오류는 충분히 분명하다 : *** 시간 데이터 ** '% D- % M- % Y는'** 포맷 ** '28 -09-2013 '* –

답변

3

datetime.datetime.strptime 인수로 date_str, format (안 format, date_str)를 수신 : strptime()에 대한

>>> import datetime 
>>> datetime.datetime.strptime('28-09-2013', '%d-%m-%Y') 
datetime.datetime(2013, 9, 28, 0, 0) 
관련 문제