高中背过 eˣ≈1+x、sin x≈x,但从没解释过这些近似从哪来、误差多大、什么时候能用。泰勒公式一次讲完:为什么是多项式、系数为什么是导数、余项有几种形式、以及它怎么统一第四讲的等价无穷小和第九讲的洛必达。这是微分学的高潮。
你在高中学过这些:
ex≈1+x,sinx≈x,ln(1+x)≈x
老师说"这是近似公式,x 很小的时候用"。你也就背下来了。
但三个问题没人回答:它们从哪来?误差多大?凭什么在 x 小的时候能用?
泰勒公式一次回答这三个。它是整个微分学的高潮——前面九讲所有的东西(极限、连续、导数、中值定理)都是为它做准备。
从一个笨问题开始
能不能用一个多项式代替任意函数?
为什么是多项式?因为多项式是人类唯一能"精确计算"的函数——加减乘除,有限次,不会出错。而 sinx、ex 这些,离开了计算器你一个都算不出来。
如果能用一个多项式抓住它们,一切都能算。这是泰勒公式的动机,非常实用主义。
从最简单的开始。一次多项式 P(x)=c0+c1x,要在 x=0 附近代替 f(x),该选什么系数?
自然的想法:让 P 和 f 在 0 点"尽可能像"。
- 函数值相等:P(0)=c0=f(0) → 定出 c0
- 一阶导数相等:P′(0)=c1=f′(0) → 定出 c1
得到 P(x)=f(0)+f′(0)x。这就是线性近似,也就是第六讲的微分。
但这只保证 0 点附近"一阶相同"。想更准,就加二次项,同时要求二阶导数也相等:
P(x)=c0+c1x+c2x2,P′′(0)=2c2=f′′(0)
定出 c2=2f′′(0)。
继续往下,要求三阶、四阶……直到 n 阶导数全部相等。你会得到一个固定的模式:
ck=k!f(k)(0)
系数是导数除以阶乘。 这就是泰勒公式的系数来源——不是谁的发明,是"让多项式在一点的所有阶导数都和原函数相同"这个要求逼出来的。
泰勒公式的两种形式
带佩亚诺余项(局部形式)
f(x)=k=0∑nk!f(k)(0)xk+o(xn)
这是"在 0 点附近"的展开,余项是 o(xn)——只知道误差比 xn 高阶,不知道具体多大。
它的用途是算极限(第四讲的 sinx∼x 就是它的第一项),不需要知道误差具体多少,只要知道阶数。
带拉格朗日余项(整体形式)
f(x)=k=0∑nk!f(k)(0)xk+(n+1)!f(n+1)(ξ)xn+1,ξ∈(0,x)
这个余项给出了误差的显式表达式:某阶导数在某个中间点的值,除以阶乘,乘 xn+1。
它的用途是估计误差、证明不等式——因为你能具体算出误差上界。
两者的区别是:佩亚诺告诉你"误差是高阶的",拉格朗日告诉你"误差具体是多少量级"。算极限用前者,估误差用后者。
展开是怎么推出来的
只推一次,但推清楚。用柯西中值定理(第八讲见过它)。
构造辅助函数(这是关键技巧,跟中值定理一样):
G(t)=f(x)−[f(t)+f′(t)(x−t)+2!f′′(t)(x−t)2+⋯+n!f(n)(t)(x−t)n]
它衡量"用 f 在 t 点的 n 阶泰勒多项式逼近 f(x)"的误差。同时定义
H(t)=(x−t)n+1
现在对 f 和 H 在区间 [0,x] 上反复用柯西中值定理。每次用都会消掉一阶导数,最后得到:
G(0)=H(n)(0)G(n)(0)⋅H(0)+⋯
一路化下去,最终:
f(x)=k=0∑nk!f(k)(0)xk+(n+1)!f(n+1)(ξ)xn+1
证明的核心思想:把"误差"构造成一个函数,然后用中值定理反复销项。 这个手法在中值定理那一讲见过——辅助函数、化归。
你不用会证,但要知道这不是巧合,是前面所有工具的一次集中调用。
四个最基本的展开
先把最常用的四个写出来,配图比较精度。
ex:系数最简单
ex=1+x+2!x2+3!x3+4!x4+⋯
每一阶导数都是 ex,在 0 点都是 1,所以系数全是 k!1。这是最好记的一个。
sinx:只有奇次项
sinx=x−3!x3+5!x5−7!x7+⋯
只有奇次幂,且符号交替。为什么?因为 sinx 是奇函数——奇函数只含奇次项。
cosx:只有偶次项
cosx=1−2!x2+4!x4−6!x6+⋯
同理,偶函数只含偶次项。
ln(1+x):收敛慢
ln(1+x)=x−2x2+3x3−4x4+⋯(−1<x≤1)
系数是 k(−1)k+1。注意它比前三个收敛慢得多——没有阶乘在分母,这是它的软肋。

同一个函数,展开阶数越高,多项式越贴紧原函数;eˣ 收敛最快,ln(1+x) 最慢
一个应用:为什么 x 小的时候近似才有效
现在能回答开头的问题了。
取 sinx 的一阶和二阶(其实只有一阶):
sinx=x+o(x)
这个式子说的是:x 足够小时,x3 项可以忽略。
但"足够小"是多小?拉格朗日余项给出答案:
sinx=x+3!sin′ξx3=x+6−cosξx3,∣ξ∣<∣x∣
误差上界是 6x3。
x=0.1:误差上界 60.001≈1.7×10−4。真值 sin0.1=0.0998334,一阶近似是 0.1,实际误差 1.67×10−4。吻合。
x=1:误差上界 61≈0.167。真值 sin1=0.8415,一阶近似是 1,误差 0.159。这时候一阶近似已经很糟了。
所以"x 很小的时候才能用"的精确含义是:误差上界 (n+1)!∣x∣n+1 小于你能容忍的范围。 不是玄学,是可计算的。
第二个应用:统一第四讲
第四讲费了半天劲讲的"等价无穷小"和"展开到第几项",泰勒公式一句话收编。
sinx=x−6x3+o(x3) 的第一项是 x,所以 sinx∼x。
sinx=x−6x3+⋯ 的前两项相减:x−sinx=6x3+o(x3),所以 x−sinx∼6x3。
所有等价无穷小都是泰勒展开降维使用的产物。 你记不住那串等价关系的时候,回到泰勒展开自己截。
第三个应用:统一第九讲
洛必达能做的,泰勒基本都能做,而且常常更快。
x→0limx2ln(1+x)−x
洛必达要两次。泰勒公式一次:
ln(1+x)=x−2x2+o(x2)
ln(1+x)−x=−2x2+o(x2)⟹lim=−21
展开、代入、看第一个不为零的项。三步,不用求导。
讲给学生听时,讲什么
第一,讲清动机。 为什么要用多项式代替函数——因为多项式是唯一能精确计算的东西。这句话一讲,泰勒公式从"背公式"变成"解决真问题"。
第二,系数不是背的,是推的。 "让所有阶导数相等"这个要求一说,k!f(k)(0) 立刻合理。而且 ex、sinx、cosx 的区别(阶乘 vs 符号交替 vs 奇偶)全部从函数性质自然流出。
第三,两种余项分开用。 算极限用佩亚诺,估误差用拉格朗日。混用会出问题。
第四,它是前面所有内容的汇合点。 极限、连续、导数、中值定理,全在这。学到这里应该回头看一眼——你会发现数学分析的地基篇到这里封顶了。
思考与拓展
- 写出 f(x)=1−x1 在 0 点的泰勒展开,并说明它和等比数列求和公式的关系。
- 用泰勒公式(拉格朗日余项)证明:当 x>0 时 ex>1+x+2x2。
- 用泰勒公式计算 x→0limx2cosx−1,并解释为什么这里用一阶展开会失败。
- 估算 sin(0.5) 用三阶泰勒的值,并和真值比较;再用拉格朗日余项算出误差上界。
- 为什么 ln(1+x) 的展开收敛比 ex 慢?从系数结构上解释。
一句话总结
泰勒公式的系数不是谁定的,是"让多项式在一点的所有阶导数都和原函数相同"逼出来的;算极限用佩亚诺余项,估误差用拉格朗日余项——它是微分学所有工具的一次汇合。
附:本文涉及的史实出处
- 泰勒公式:Brook Taylor 1715 年发表;拉格朗日余项(1797)、柯西余项、积分余项均为后世的严格化
- 佩亚诺余项:Peano,19 世纪末,专用于局部极限计算
- sinx、cosx、ex、ln(1+x) 的展开式:标准结果,本文数值验证
- 泰勒公式证明依赖柯西中值定理(见第八讲)
— Y. · 2026-10-06