Python中的高斯日期计算



我正试图找出一个公式来进行高斯日期计算。我的教授说它的

x = year - (14 - month)/12
y = x + x/4 - x/100 + x/400
z = month + 12 * ((14 - month) /12) -2 
dow = (day + y + (31 * z)/12) % 7

道琼斯指数0的结果是周日等

但如果我用这个公式做任何计算,结果总是错误的。我知道我需要对它进行int运算,所以我用int((将值括起来,尽管结果仍然不正确。

今天的示例

Day = 2
Month = 5
Year = 2021

Dow = 2.16 so 2 so it says it’s a Tuesday?

Omg所以我解决了这个问题,问题是在java中,它会自动将每个除法设为int并删除小数,但在python中却没有这样做,所以代码必须改为.

x = year-int((14-month)/12)
y = int(x +(x / 4)) - int((x / 100)) + int((x / 400))
z = month + 12 * int((int((14 - month)) / 12)) - 2;
dow = (day + y + int((31*z)/12))%7

最新更新