2013-08-29 2 views
0

날짜 개체가있는 json 파일이 있습니다. 그것의이 형식으로 : u'2013-08-29 '. 이 날짜와 현재 날짜 사이의 날짜를 찾고 싶습니다. 나는 시도했다 :파이썬; 날짜의 일수

>>> date=data2[u'emd'][u'result'][0][u'row'][u'date']; %%date=u'2013-07-31' 
str(datetime.date.today())-str(date) 

그러나 이것은 전혀 작동하지 않았다. 이 작업을 수행하는 간단한 방법이 있습니까 ??

+1

두 개의 문자열을 뺍니다. 어떻게 그 일을 기대 했습니까? – abarnert

답변

4

json 파일에서 가져온 문자열을 구문 분석하고 현재 날짜를 가져 오는 데 datetime 클래스를 사용하십시오. 두 개의 datetime 개체를 빼면 days이라는 특성을 가진 timedelta 개체가 생성됩니다. 빅토르 제공된 datetime를 사용하여 어디

>>> from datetime import datetime 
>>> (datetime.now() - datetime.strptime('2013-07-31', '%Y-%m-%d')).days 
29 
+0

거의 완벽합니다. 하지만 어떻게 정수로 일 수에 액세스합니까? ... nevermind : P – kmdewey

+0

@ user2729910 정수입니다. 'days' 속성은 정수입니다. –

0

data.json 파일

import json 
from datetime import datetime 

with open('data.json') as data_file:  
    data = json.load(data_file) 
    date = data["masks"] 
    (datetime.now() - datetime.strptime(date, '%Y-%m-%d')).days 

로부터 입수 필드부터.