|
1.官方文档math---数学函数—Python3.12.2文档cmath---关于复数的数学函数—Python3.12.2文档Python中,可以使用内置的数学运算符,例如加法(+)、减法(-)、除法(/)和乘法(*)进行简单的数学运算。不过,更高级的运算,如指数函数、对数函数、三角函数或幂函数,并没有内置函数,需要使用Python标准库中一个专门为高级数学运算设计的模块:math模块。 2.常量名称描述Pi圆周率π是圆的周长(c)与直径(d)之比,无理数。math.pi返回一个保留到小数点后15位的浮点数。Tau圆的周长与半径之比(Tau=2π),无理数。math.tau 返回一个保留到小数点后15位的浮点数。许多数学表达式使用2π,因而使用tau可以简化方程。例如,不用2πr来计算圆的周长,用更简单的方程τr。可以根据需要自由地使用2π或τ。Euler’snumber欧拉常数(e)是自然对数的底,无理数,约等于2.71828。math.e 返回一个保留到小数点后15位的浮点数。欧拉常数是一个重要常数,有许多实际用途,如计算人口随时间的增长率或放射性衰变率。Infinity无穷是一个数学概念,表示无限,分为正无穷大和负无穷大。math.inf 等价于float("inf")Notanumber(NaN)NaN不是一个数学概念,它起源于计算机科学领域,作为对非数字值的引用。NaN值可能是由无效的输入产生的,或表示应该是数字的变量已被文本字符或符号损坏。math.nan等价于float("nan")请使用math.isnan()函数来检查一个数字是否为NaN,而不能使用is或==。 代码说明:math.pi#3.141592653589793math.tau#6.283185307179586math.e#2.718281828459045math.inf#infmath.nan#nanmath.pi*2==math.tau#Truefloat('inf')==math.inf#Truemath.inf==math.inf#Truemath.inf==-math.inf#Falsefloat('nan')==math.nan#Falsemath.isnan(math.nan)#Truemath.isnan(float('nan'))#True3.数论与表示函数3.1 函数概览math.factorial(n)返回 n 的阶乘。如果 n 不是正数或不是整数会引发 ValueError。自3.9版本,接受具有整数值的浮点数(例如 5.0)的行为被弃用。math.comb(n, k)在3.8版本加入.组合数,返回不重复且无顺序地从 n 项中选择 k 项的方式总数。具体来说:当kn时取值为零。也叫二项式系数,它也是(1+x)ⁿ的多项式展开中第k项的系数。如果任一参数不为整数则会引发TypeError。如果任一参数为负数则会引发ValueError。math.perm(n, k=None)在3.8版本加入.排列数,返回不重复且有顺序地从 n 项中选择 k 项的方式总数。具体来说:当 k n 时取值为零。如果 k 未指定或为None,则 k 默认值为 n 并且函数将返回 n!。如果任一参数不为整数则会引发TypeError。如果任一参数为负数则会引发ValueError。math.ceil(x)返回x 的向上取整,即大于或等于 x 的最小的整数。输入整数值时,返回相同的数字;输入非数值内容(如字符串)引发TypeError。math.floor(x)返回 x 的向下取整,小于或等于 x 的最大整数。输入整数值时,返回相同的数字;输入非数值内容(如字符串)引发TypeError。math.trunc(x)返回去除小数部分的 x ,只留下整数部分。 trunc() 对于正的 x 相当于 floor() ,对于负的 x 相当于 ceil(),向0取近似(roundeddownwardtowardzero)。math.modf(x)返回 x 的小数和整数部分。两个结果都带有 x 的符号并且是浮点数。math.isinf(x)如果 x 是正或负无穷大,则返回 True ,否则返回 False。math.isnan(x)如果 x 是NaN,则返回 True ,否则返回 False。math.isfinite(x)如果 x 既不是无穷大也不是NaN,返回 True,否则返回 False。math.isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)根据给定的绝对差值和相对差值,确定两个值是否可视为是接近的,若 a、b 的值比较接近返回 True,否则返回 False。Relativetolerance (rel_tol):百分数表示的相对于输入数据的量级的最大差值(也称差值容忍度或阈值,小于对应值时才能才认为两数接近)例如,想要设置5%的容差,需传递 rel_tol=0.05。默认值是1e-09=0.000000001,两数至少小数点后9位都一致。Absolutetolerance (abs_tol):绝对值形式的最大差值,不考虑输入数据的量级。默认值是0。 判定规则可以概括为: abs(a-b) |x|远小于|y|;x与y中至少有一个是浮点数(浮点数会导致精度损失)。此时,|x|%|y|的值相对较小(等于|x|),|y|又非常大,加上计算机对浮点数计算精度的损失,会出现|y|-(|x|%|y|)的结果被近似成|y|的奇怪现象。因此:有浮点数首选math.fmod(),整数首选%运算符。math.isqrt(n)返回非负整数 n 的整数平方根,即n 的实际平方根向下取整的结果,相当于使得 a² = n²的最小整数 a ,即n 的实际平方根向上取整的值,可以使用 a = 1 + isqrt(n - 1)。math.ldexp(x, i)返回 x * (2**i),函数math.frexp的反函数。math.frexp(x)返回(m, e) 满足x == m * 2**e,其中m 是浮点数, e 是整数。如果 x 为零,则返回 (0.0, 0) ,否则返回 0.5
|
|