【Time】【Python】年月日与儒略日的转换

from datetime import datetime


def d_to_jd(time):
    fmt = '%Y.%m.%d'
    dt = datetime.strptime(time, fmt)
    tt = dt.timetuple()
    return tt.tm_year * 1000 + tt.tm_yday


def jd_to_time(time):
    dt = datetime.strptime(time, '%Y%j').date()
    fmt = '%Y.%m.%d'
    return dt.strftime(fmt)


if '__main__' == __name__:
    flag = input('Please input the date transform type: 1 for Julian day to date; 2 for date to Julian day:')
    if 1 == int(flag):
        time = input('Please input the date (YY.MM.DD):')
        print(d_to_jd(time))
    elif 2 == int(flag):
        time = input('Please input the Julian day:')
        print(jd_to_time(time))

        关于年月日与年积日的转换,可以考虑儒略日这个中转作用,也就是当年的元月一日,可以转换为年积日,进行相减,即可得到年积日DOY。

    上面代码有误,误导观众,刚又学习了一会儿,不要搞这么复杂,去熟悉下datetime这个模块,所有的函数都写好了,直接用。

 

 

你可能感兴趣的:(python,GNSS,Time)