儒略日和常规日期的转换(Python版)

Posted 卡尔曼和玻尔兹曼谁曼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了儒略日和常规日期的转换(Python版)相关的知识,希望对你有一定的参考价值。

天文地理学科经常会使用儒略日(Julian Day)
这里使用Python的datetime模块实现其和常规日期的转换

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))

运行结果:

Please input the date transform type: 1 for Julian day to date; 2 for date to Julian day:1
Please input the date (YY.MM.DD):2016.08.21
2016234
Please input the date transform type: 1 for Julian day to date; 2 for date to Julian day:2
Please input the Julian day:2016234
2016.08.21

以上是关于儒略日和常规日期的转换(Python版)的主要内容,如果未能解决你的问题,请参考以下文章

PHP juliantojd() 函数 - Break易站

CSP2020 儒略日 题解

PHP 5 Calendar 函数

oracle随机生成时间

在 impala 中将儒略日期转换为公历日期

在 s-s-rS 中转换儒略日期