此编码用于查找日期之间的天数。我的编码不适用于我在代码最后作为注释提到的情况,请指定我的错误(注意:(y1,m1,d1)-> 开始日期和(y2, m2,d2) -> 结束日期)
def days_between_dates(y2,m2,d2,y1,m1,d1):
days = 0
tot = 0
while not(y1==y2 and m1==m2 and d1==d2):
days = days + 1
d1 = d1+1
if((m1 == 4 or m1 == 6 or m1 == 9 or m1 == 11) and d1 == 30):
d1 = 0
m1 = m1+1
if(d1 == 31):
d1 = 0
m1 = m1+1
if (((y1%4)!=0) and m1 == 2 and d1==28):
d1 = 0
m1 = m1+1
else:
if(m1 == 2 and d1 == 29):
d1 = 0
m1 = m1+1
if(m1>12):
m1 = 1
y1 = y1 + 1
if(y1==y2 and m1==m2 and d1==d2):
return days
break
return days
print days_between_dates(2011,1,1,2010,1,1)
print days_between_dates(2013,1,1,2012,1,1)
#print days_between_dates(2012,2,29,2012,2,28)