血糖换算器
在 mg/dL 和 mmol/L 之间换算血糖值,附正常范围参考。
Reference ranges
| Status | mg/dL | mmol/L | ||
|---|---|---|---|---|
| Fasting | 2h post-meal | Fasting | 2h post-meal | |
| Normal | 70–99 | < 140 | 3.9–5.5 | < 7.8 |
| Pre-diabetes | 100–125 | 140–199 | 5.6–6.9 | 7.8–11.0 |
| Diabetes | ≥ 126 | ≥ 200 | ≥ 7.0 | ≥ 11.1 |
For reference only. Consult a healthcare professional for medical advice.
血糖水平的单位因国家而异:美国等部分国家使用 mg/dL(毫克/分升),而欧洲、加拿大、澳大利亚及大多数国家使用 mmol/L(毫摩尔/升)。在阅读国际医学文献、使用进口血糖仪或与海外医疗人员沟通时,单位换算至关重要。
mg/dL 换算为 mmol/L 需除以 18.018;mmol/L 换算为 mg/dL 需乘以 18.018。例如,空腹血糖 100 mg/dL 约等于 5.6 mmol/L。本工具可即时完成双向换算,并显示临床重要阈值参考表。
正常空腹血糖通常低于 100 mg/dL(5.6 mmol/L)。100~125 mg/dL(5.6~6.9 mmol/L)提示糖尿病前期;两次测量均达到 126 mg/dL(7.0 mmol/L)或以上通常可诊断为糖尿病。
常见问题
代码实现
# Blood glucose unit conversion
# Molecular weight of glucose = 180.182 g/mol
# Factor = 18.0182
FACTOR = 18.0182
def mgdl_to_mmoll(mgdl: float) -> float:
"""Convert blood glucose from mg/dL to mmol/L."""
return mgdl / FACTOR
def mmoll_to_mgdl(mmoll: float) -> float:
"""Convert blood glucose from mmol/L to mg/dL."""
return mmoll * FACTOR
def classify_fasting(mgdl: float) -> str:
"""Classify fasting blood glucose level (ADA guidelines)."""
if mgdl < 70:
return "Low (Hypoglycaemia)"
elif mgdl < 100:
return "Normal"
elif mgdl < 126:
return "Pre-diabetes"
else:
return "Diabetes range"
# Example conversions
values_mgdl = [54, 70, 90, 100, 126, 180, 250]
print(f"{'mg/dL':>8} {'mmol/L':>8} {'Category'}")
print("-" * 40)
for v in values_mgdl:
mmol = mgdl_to_mmoll(v)
category = classify_fasting(v)
print(f"{v:>8} {mmol:>8.1f} {category}")
# Reverse conversion
print("\nmmol/L → mg/dL:")
for v in [3.9, 5.5, 7.0, 10.0]:
mgdl = mmoll_to_mgdl(v)
print(f"{v} mmol/L = {mgdl:.1f} mg/dL")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.