卡路里计算器

一边按三套公式算出你每天该吃多少千卡,一边把今天吃进去的食物逐项加总,直接看摄入和目标差在哪里。

静息消耗·Mifflin-St Jeor1649 千卡/天
静息消耗·Harris-Benedict1696 千卡/天
静息消耗·Katch-McArdle1580 千卡/天
全天消耗 TDEE(中度 1.55)2556 千卡/天
减脂目标 ×0.852172 千卡/天
增肌目标 ×1.152939 千卡/天
清单摄入合计1506 千卡
距维持目标还差−1050 千卡

本次清单明细

食物克数千卡/100 克小计(千卡)
米饭300116348
馒头100223223
鸡蛋100144144
牛奶25054135
鸡肉150167250.5
豆腐15082123
大白菜3001854
苹果20054108
花生20601120.2
合计1570—1506

常见食物能量速查表(千卡/100 克可食部)

食物千卡/100 克可食部
米饭116
馒头223
面条286
土豆77
粉条339
豆腐82
豆浆16
豆腐皮410
香菇26
海带16
核桃646
花生601

提示:在参数输入框里按 Enter 可直接算一次;食物清单是多行文本框,Enter 留给换行,要立刻重算请按 Ctrl + Enter(macOS 用 Cmd + Enter)。食物能量取自中国疾病预防控制中心营养与健康所公开的《中国食物成分表》常吃食物能量表。

使用方法

  1. 先填身体参数:示例是男 / 30 岁 / 175 厘米 / 70 千克,也是页面默认值。年龄 15~100 岁、身高 100~250 厘米、体重 30~300 千克,越界会指名报出是哪个字段。
  2. 体脂率按需填,默认 20 %。有体脂秤或 DEXA 数据就填,能多算一套 Katch-McArdle;没有就留空,页面只跑另外两套公式。
  3. 选活动水平,默认中度活动(系数 1.55,每周 3~5 次)。拿不准就选低一档:一天里除了那一个小时训练,其余时间多数人都在坐着。
  4. 把今天吃的写进清单,一行一样,格式是「食物名 + 克数」。示例预置 9 行、合计 1570 克;食物名必须能在下面的速查表里查到,查不到会指出行号和名字。
  5. 点「计算摄入与目标」,结果卡和明细表一起刷新。参数框里可以直接按 Enter;清单是多行框,要立刻重算请按 Ctrl + Enter。点「导出明细 CSV」存表格,「恢复默认参数」回到示例值。

这个卡路里计算器能解决什么问题

一是把「我今天吃了多少」算清楚。多数人只记得主食和肉,忘了奶、水果和坚果。示例里 20 克花生就是 120.2 千卡,比 200 克苹果的 108 千卡还高;清单摊开就能看出热量集中在哪几项。

二是看清目标热量该定在哪一档。同一组参数下三套公式相差 116 千卡,乘 1.55 后差约 180 千卡,一个月就是 5400 千卡——约 0.7 千克脂肪组织。并排给出三套公式,就是让你看见这个区间,而不是把某个数当标准答案。

三是判断一份饮食是否合理。示例清单 1506 千卡,对 2556 千卡的维持目标留下 1050 千卡缺口,已超出《中国居民膳食指南(2022)》建议的每日 300~500 千卡。这说明清单不完整(缺烹调用油和饮料),而不是说明「吃得越少越好」。

四是给外食快速估个数。菜单通常不标热量,可以按主要食材拆开估:一份盖饭按 300 克米饭加 150 克肉,再加一勺油约 90 千卡,误差通常能压在两成以内。

本页不做这些事:不判断体型胖瘦(用「BMI计算器」)、不单独算静息消耗(用「基础代谢计算器」)、不按运动时长推消耗(用「跑步消耗卡路里计算器」)。

计算原理:三套公式、五个活动系数与 4.184 换算

这个卡路里计算器把计算拆成三段:先算静息消耗,再乘活动系数得到全天消耗,最后按食物清单算摄入。

第一段,三套静息消耗公式。页面同时跑三条线性方程并全部给出:Mifflin-St Jeor(1990)男性 10×体重 + 6.25×身高 − 5×年龄 + 5,女性末项换成 −161;Harris-Benedict 修订版(1984)男性 88.362 + 13.397×体重 + 4.799×身高 − 5.677×年龄;Katch-McArdle(1996)370 + 21.6×瘦体重。

为什么要放三套。Mifflin-St Jeor 的样本来自 1990 年的现代人群,对照间接测热法时约 82 % 的成年人落在 ±10 % 以内,是没有体脂率时的默认选择。Harris-Benedict 修订版样本更早,在体脂偏高的人群里系统性偏高 5 %~15 %,更像一个上限。Katch-McArdle 只吃瘦体重一个变量,绕开了「同样 70 千克,体脂 10 % 和 40 % 完全是两个人」的问题:示例参数下体脂率从 10 % 升到 40 %,它从 1731 千卡掉到 1277 千卡,而同一人用 Mifflin-St Jeor 始终是 1649 千卡。所以有可靠体脂数据时优先看 Katch-McArdle,没有就以 Mifflin-St Jeor 为主。

第二段,五个活动系数。取值 1.2、1.375、1.55、1.725、1.9,对应从「几乎不运动」到「体力工作或一天两练」。它不是实测值,而是把走路、站立、家务、无意识小动作一起打包进去的乘数——同等体型的人一天可以差 300~800 千卡,这一档是整个计算里误差最大的环节。

第三段,食物清单按每 100 克可食部折算。页面内置 40 条常见食物的能量值,单位是千卡/100 克可食部,取自中国疾病预防控制中心营养与健康所公开的《中国食物成分表》常吃食物能量表,算式是 每 100 克能量 × 克数 ÷ 100。要留意「可食部」三个字:一根带皮香蕉约 150 克,可食部只有 100 克上下,直接按 150 克查表会高估一半。

末尾那句 4.184 是怎么来的。热化学卡把 1 卡定义为恰好 4.184 焦耳,所以 1 千卡 = 4184 焦耳 = 4.184 千焦,GB 28050《食品安全国家标准 预包装食品营养标签通则》就用这个系数。验证:指南给男性低身体活动水平的推荐量 9.41 兆焦 ÷ 4.184 = 2249 千卡,与它同时标注的 2250 千卡一致。

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

示例条件与默认值完全一致:男 / 30 岁 / 175 厘米 / 70 千克 / 体脂率 20 % / 中度活动 1.55,清单为上面那 9 行、合计 1570 克。数值仅作演示。

把明细摊开看:300 克米饭 348 千卡、150 克鸡肉 250.5 千卡、100 克馒头 223 千卡,三项合计 821.5 千卡,超过总量一半;而 300 克大白菜只有 54 千卡,还不到 20 克花生的一半。同样的重量,能量可以差 30 倍以上。

输入范围与对照表

活动系数最容易被高估。下表固定示例的身体参数(静息消耗 1649 千卡),只换档位:

活动水平系数全天消耗(千卡/天)判断依据
久坐1.21979办公室工作,日常不到 5000 步,没有固定锻炼
轻度活动1.3752267每周 1~3 次轻量运动,或通勤以步行、骑车为主
中度活动(默认)1.552556每周 3~5 次中等强度训练,每次 30~60 分钟
高强度活动1.7252844每周 6~7 次训练,或工作本身含较多体力
极高强度1.93133一天两练、竞技耐力项目,或重体力工作

第二张表把 7700 与 9400 千卡/公斤两种口径并排,看同一个日缺口差多少天。减 5 公斤能差出两周以上:

每日缺口按 7700 减 1 公斤按 9400 减 1 公斤按 7700 减 5 公斤
300 千卡25.7 天31.3 天128 天
500 千卡15.4 天18.8 天77 天
1050 千卡(示例)7.3 天9.0 天37 天
1000 千卡7.7 天9.4 天39 天

第三张表是千焦与千卡互查,包装食品只标千焦时除以 4.184 即可:

千卡(kcal)千焦(kJ)兆焦(MJ)对应场景
180075317.53指南女性推荐量(18~49 岁,低身体活动水平)
225094149.41指南男性推荐量(同上)
25561069410.69本页示例的全天消耗
150663016.30本页示例清单的摄入合计

输入范围、边界与精度说明

常见问题

三套公式算出来不一样,该信哪个?

它们不是谁算错了,而是样本和变量不同。没有可靠体脂率时以 Mifflin-St Jeor 为主;有体脂数据时看 Katch-McArdle;Harris-Benedict 修订版当上限参考。把三者看成一个区间,再用 2~4 周的体重记录去收敛,比纠结用哪一个更有用。

「1 公斤脂肪 = 7700 千卡」到底准不准?

它是方便传播的静态近似。来源是 1958 年的 Wishnofsky 规则:人体脂肪组织约 87 % 是脂质,按弹式量热计 9.5 千卡/克算,454 克(1 磅)约 3500 千卡,折成公制就是 7700。但减重时掉的并不全是脂肪组织——早期主要是糖原、蛋白质和它们结合的水,实际缺口明显低于 7700;后期以脂肪为主又接近这个数。当量级参考可以,当精算公式必然落空。

为什么你写纯脂肪是 9400 千卡/公斤,有的资料写 9000?

两个数都对,口径不同。9400 来自弹式量热计的燃烧热,纯甘油三酯实测约 9.3~9.5 千卡/克,取 9.4 即 9400。9000 来自 Atwater 系数,它把消化吸收损失也扣掉了,脂肪按 9 千卡/克计。两者差约 4 %,日常可以忽略,但要清楚自己看的是哪一种。

同样的重量,为什么食物之间热量差这么多?

因为三大营养素供能不同:蛋白质和碳水各约 4 千卡/克,脂肪约 9 千卡/克。速查表里最高的是核桃 646 千卡/100 克,最低是海带 16 千卡/100 克,相差约 40 倍——前者一半以上是脂肪,后者绝大部分是水。所以「吃多少克」远不如「吃的是什么」重要。

包装上只有千焦,怎么换算成千卡?

除以 4.184。一包饼干标 2100 千焦,2100 ÷ 4.184 ≈ 502 千卡。这个数是精确定义:热化学卡规定 1 卡 = 4.184 焦耳,也可以把本页结果乘回去核对标签。

清单里有表里查不到的食物怎么办?

页面会报出行号和名字。三种处理方式:换成表内最接近的条目(「油麦菜」用「油菜」代替)、把这道菜按主要原料拆成几行分别填、或者直接取包装营养成分表上每 100 克的能量自己折算。页面不会跳过查不到的行,静默跳过会让合计偏低。

为什么算出来的摄入总比重想的低?

最常见的漏项是烹调用油(一汤匙约 10 克、约 90 千卡)、含糖饮料和酒、以及零食坚果。速查表里没有这些条目,合计天然偏低,建议按克数补进清单。

按缺口算出的减重速度,为什么坚持一段时间就变慢了?

因为体重下降会让全天消耗同步下降,同样的饮食在更轻的身体上不再构成同样的缺口;早期减掉的糖原和水分还会带来一波快速下降。做法是把缺口控制在每日 300~500 千卡,每减 2~4 公斤后按新体重重算一次目标。

相关工具