根据天数计算具体日期

网友投稿 916 2022-10-11

根据天数计算具体日期

问题描述:Landsat数据的命名规范中对于日期是:年份+该年的第几天 具体参见:​​​Landsat File Naming Convention​​​ 那如果通过天数计算具体的日期呢? 下面给出计算源码(Python版本): Python3下运行通过

def is_leap_year(year): # 判断闰年的方法是该年能被4整除且不能被100整除,或者是可以被400整除 if ((year%4 == 0) and (year%100 != 0)) or (year%400 == 0): return True else: return Falsedef calculate_date(year, num): days_of_year = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] if is_leap_year(year): days_of_year[1] = 29 month = num // 30 #可能是month月或者month+1月 days = 0 for i in range(month): days += days_of_year[i] if days >= num: #应该不会出现大于的情况,最多是等于的情况 days -= days_of_year[month-1] else: month += 1 date = num - days return (year, month, date) #返回年月日的一个tupleif __name__ == '__main__': year = '2000' #四位 days = '061' #三位 print(year + days + '=', end='') date = calculate_date(int(year), int(days)) print(str(date[0]) + '-' + str(date[1]) + '-' + str(date[2]))

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java并发编程回环屏障CyclicBarrier
下一篇:微信小程序-历史上的今天 毕业设计项目(微信小程序的前世今生)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~