天转年换算器

把天数折算成公历年:公历闰年规则是四年一闰、百年不闰、四百年再闰,400 年里正好 97 个闰年、146097 天,平均一年 365.2425 天,所以 1000 天只有 2.737907 年。页面同时给出儒略年与回归年的口径对照、十二行时间单位表与批量换算,方向也可以反过来从年算回天。

1 公历年 = 365.2425 天;平年 365 天只有 0.999336057551 年,闰年 366 天才是 1.002074 年,两个都不是整整 1 年。

默认示例:1000 天按 365.2425 天一年折成 2.737907 年。批量框每行写「数值 空格 方向键」,d2y 是天到年,y2d 是年到天;清空后点「换算」会填回示例。

使用方法

  1. 「数值」默认 1000,范围 0 到 100000,支持小数;「方向」默认天到年。改动任意一项、或光标停在数值框里按回车,都会立刻重算。
  2. 「方向」下拉只有两项:d2y 表示天到年,y2d 表示年到天。点「交换方向」把两头对调,用来反着核一遍。
  3. 「小数位」默认 6,范围 0 到 6。天折年的系数是 0.002737907007,位数少了会直接舍成 0,默认给足六位;只要整数张的时候填 0 更清爽。
  4. 「批量换算」默认已经写好五行,每行一条「数值 空格 方向键」,例如 365 d2y。按 Ctrl+Enter(Mac 上 Cmd+Enter)一次算完;框被清空时点「换算」会自动填回示例。
  5. 结果区第一行是主结果;往下三行是固定口径:1 公历年 = 365.2425 天、1 天 = 0.002737907007 年、365 天 = 0.999336057551 年,与小数位无关;最后是批量五行的逐条结果。
  6. 清单下面是十二行时间单位对照表,从 1 天到 400 公历年逐行折成公历年与儒略年,默认显示 6 行,点「加载更多」展开全部,点「导出 CSV」存成带字节序标记的文件。
  7. 「复制结果」复制整段清单;「复制对照表」复制正文那张时间单位对照表,制表符分隔,可以直接粘进表格软件。
  8. 数值为空、写成负数、超过 100000,小数位留空或不是 0 到 6 的整数,批量行缺空格、数值不是数字、方向键不在 d2y 与 y2d 之内,都会给出指明行号和原因的具体提示。

这个天转年换算器能解决什么问题

天是确定的时间长度,年却有好几种口径。这一页做的是把天数折算成公历平均年,默认方向就是天到年,选 y2d 可以反过来算。锚点是天:1 公历年登记 365.2425 天,除法与乘法各走一条路,互为逆运算。

第一类是最反直觉的那一条:365 天平年算出来是 0.999336057551 年,不是整整 1 年。因为平均年比平年多出 0.2425 天,把 365 天除以 365.2425 必然差一点点。租期、保修期、工龄这类「满一年」的说法,按 365 天估算会系统性偏小 0.066%,攒到几十年就是好几天。

第二类是工程工期与项目排期。1000 天折 2.737907 年,1826 天折 4.999418 年——差 6 天就到 5 年。反过来排期时,说「五年」到底是 1826 天还是日历上的 1826 天或 1827 天(取决于中间夹了几个 2 月 29 日),用平均年先估再用日历核对,是最省事的两步法。

第三类是日息与年化的折算。金融机构按 365 天一年做日息,也有按 360 天一年的;本页给的是公历平均年 365.2425 天这一支,用它把年化利率摊到每一天,比按 365 更贴近真实的日历长度。

还有一类边界必须说清:平均年只对「长时间跨度」成立。要算某个具体区间有多少天,必须一年一年数闰年——1900 年不是闰年,2000 年却是,因为百年不闰、四百年再闰。本页给的是平均口径,不做具体日期的区间天数计算。

计算原理与变量说明

整页只锚定一个系数:365.2425。天到年是除以它,年到天是乘上它。两个方向共用同一条式子,互为逆运算,不需要为每个方向各写一套公式。

365.2425 是数出来的,不是近似拟合。公历闰年规则是四年一闰、百年不闰、四百年再闰。取 400 年这个最小周期:400 ÷ 4 = 100 个闰年候选,减去 4 个整百年里不算闰年的 3 个(100、200、300),加上 400 本身这一个,共 97 个闰年。400 × 365 + 97 = 146097 天,除以 400 得 365.2425 天,这是一个精确的有限小数。

「一年」至少有三种口径。日历上写在墙上的那一年是 365 天或 366 天;公历平均年是 365.2425 天;天文学里的儒略年是 365.25 天,用作光年等距离单位的时间基准。回归年(太阳两次过春分点)约 365.2422 天,而且还在缓慢变化,所以它和 365.2425 对不齐,这正是要靠闰年规则不断修正的原因。

单位天折公历年折儒略年
1 天10.0027379070.002737851
1 周70.0191653490.019164956
1 平均月30.4368750.0833333330.083331622
1 平年3650.9993360580.999315537
1 闰年3661.0020739651.002053388
1 公历年365.242510.999979466
1 儒略年365.251.0000205341
1 回归年365.24220.9999991790.999978645
1 恒星年365.2563631.0000379561.000017421
1 年代3652.425109.999794661
1 世纪36524.2510099.997946612
400 公历年146097400399.991786448

反向是乘法,但口径要跟着换。1 年 = 365.2425 天是平均值,把它摊到具体某一年就未必成立:2024 年是 366 天,2025 年是 365 天。所以「1 年有多少天」这个问题在平均口径下是 365.2425,在日历口径下必须先看是哪一年。

舍入只发生在显示层。内部用双精度浮点,365.2425 能被精确表示,除法结果保留约 16 位有效数字;显示时按「小数位」四舍五入后去掉末尾多余的零,所以 2.737907006989 在小数位 6 时显示成 2.737907。

完整示例(数值仅作演示)

默认值是数值 1000、方向天到年、小数位 6。手算复算:1000 ÷ 365.2425 = 2.737907,页面主结果就是「1000 天 = 2.737907 年」。

1000 天 ÷ 365.2425 = 2.737907006989 年
365 天 ÷ 365.2425 = 0.999336057551 年
反向:1 年 × 365.2425 = 365.2425 天

批量框五行:365 d2y 得 0.999336 年,正好演示平年不满一整年;366 d2y 得 1.002074 年,闰年反而多出一点;100 d2y 得 0.273791 年;1 y2d 走反方向,得 365.2425 天。每一行都按自己行首的方向键独立计算,与顶部下拉无关。

反向核对:点「交换方向」后数值仍是 1000,方向变成年到天,1000 年折 365242.5 天,这正是 146097 天乘 2.5 的结果(400 年 146097 天,1000 年是它的 2.5 倍)。边界值有两个:0 天 = 0 年;上限 100000 天 = 273.790701 年,反向 100000 年 = 36524250 天。

天转年对照表

下表把常见时间跨度按天从小到大排列,第三列是折成的公历年,第四列是折成的儒略年。天一列是锚点,后两列分别由天除以 365.2425 与 365.25 得来。

单位天折公历年折儒略年
1 天10.0027379070.002737851
1 周70.0191653490.019164956
1 平均月30.4368750.0833333330.083331622
1 平年3650.9993360580.999315537
1 闰年3661.0020739651.002053388
1 公历年365.242510.999979466
1 儒略年365.251.0000205341
1 回归年365.24220.9999991790.999978645
1 恒星年365.2563631.0000379561.000017421
1 年代3652.425109.999794661
1 世纪36524.2510099.997946612
400 公历年146097400399.991786448

读这张表抓两条线:一条是 365 与 366 两行,它们分居 1 的两侧,谁都不是整整 1 年;另一条是儒略年那一行,它比公历年多 0.0075 天,四百年下来就攒出 3 天的差,这正是 1582 年改历的直接原因。

结果边界、舍入与适用说明

常见问题

为什么 365 天算出来不是 1 年?

因为公历平均一年是 365.2425 天,比平年多 0.2425 天。365 ÷ 365.2425 = 0.999336057551,差的那 0.000664 年就是 0.2425 天。闰年 366 天反过来是 1.002073965 年,同样不是整整 1 年。

365.2425 天是怎么来的?

400 年里按四年一闰有 100 个候选,扣掉 100、200、300 这 3 个整百年,再加回 400 本身,共 97 个闰年。400 × 365 + 97 = 146097 天,146097 ÷ 400 = 365.2425 天。

公历年和儒略年差多少?

儒略年固定 365.25 天,比公历平均年多 0.0075 天。看着微不足道,约 133 年就攒出 1 天,四百年攒 3 天,这正是 1582 年推行格里高利历要一次性删掉 10 天的原因。

回归年 365.2422 天和 365.2425 天对不上怎么办?

对不上才需要闰年规则。回归年是太阳两次过春分点的间隔,约 365.2422 天而且缓慢变化;365.2425 是历法取的平均近似,两者每年差约 0.0003 天,要靠「百年不闰、四百年再闰」这种例外规则长期吸收。

我能用这一页算两个日期之间有多少天吗?

不能。本页做的是天与平均年之间的单位换算,输入的是天数而不是日期。要算 2024-01-01 到 2025-01-01 有多少天,得用日期间隔计算工具,因为具体区间必须逐个闰年数过去。

批量里的 d2y 和 y2d 是什么意思?

d2y 是 day to year 的缩写,表示这一行按天算成年;y2d 是 year to day,表示按年算成天。每行可以写不同的方向键,大小写不敏感,D2Y 与 d2y 等价。

为什么小数位调到 0 就全变成 0 了?

因为 1 天只有 0.002737907007 年,四舍五入到整数必然是 0。要看非零结果,要么把小数位调到 3 以上,要么把数值放大到几百天以上再算。

输入的数据会上传到服务器吗?

不会。数值、方向与批量内容只在本页的 JavaScript 里做乘除,没有发起任何网络请求,刷新页面后输入即恢复默认值。

相关工具