python常用库学习(一)——math库
工作几年了,突然发现自己的知识点没有系统性的记录过,对一些常用库也理解不深刻。所以我决定做一个常用库说明系列,这是该系列的第一篇文章,自己学习的同时希望对大家也有用;
目录
前言
工作几年了,突然发现自己的知识点没有系统性的记录过,对一些常用库也理解不深刻。所以我决定做一个常用库说明系列,这是该系列的第一篇文章,自己学习的同时希望对大家也有用;
一、math库说明
Python的math库是Python的内建库之一,它提供了许多数学函数,包括三角函数、对数函数、幂函数等,以及一些数学常量如圆周率(pi)和自然对数的底(e)。这个库主要用于处理基础数学运算和数学函数的计算。
Python的math库是Python的内置模块,它提供了许多数学函数和常量,可以帮助我们进行数学运算。
二、math的使用
由于math库是python的内置库,所以我们只需要导入它即可正常使用。导入的方法非常简单:
import math
三、math库的常见函数和常量
1、常量
以下是一些常见的:
-
math.pi
:表示圆周率π,大约等于3.141592653589793。 -
math.e
:表示自然常数e,即自然对数的底数,大约等于2.718281828459045。 math.tau
:表示数学常数τ,它等于2π,大约等于6.283185307179586。这个常量在Python 3.6版本中被添加。math.inf
:表示正无穷大。例如,对于所有的x(除了math.nan
),math.inf > x
都为真。math.nan
:表示一个特殊的浮点数“NaN”(Not a Number)。对于所有的x,math.nan != x
都为真,包括math.nan != math.nan
。
2、基本数学函数
以下是一些常见的:
-
math.fabs(x)
: 返回x的绝对值。 -
math.ceil(x)
: 返回大于或等于x的最小整数。 -
math.floor(x)
: 返回小于或等于x的最大整数。 -
math.exp(x)
: 返回e的x次幂。 -
math.log(x[, base])
: 返回x的自然对数,如果给出了base,那么返回以base为底的x的对数。 -
math.pow(x, y)
: 返回x的y次幂。 -
math.sqrt(x)
: 返回x的平方根。 -
math.sin(x)
: 返回x的正弦值。 -
math.cos(x)
: 返回x的余弦值。 -
math.tan(x)
: 返回x的正切值。 -
math.asin(x)
: 返回x的反正弦值。 -
math.acos(x)
: 返回x的反余弦值。 -
math.atan(x)
: 返回x的反正切值。 -
math.radians(x)
: 把角度x转换为弧度。 -
math.degrees(x)
: 把弧度x转换为角度。
3、幂和对数函数
以下是一些常见的:
-
math.pow(x, y)
: 返回x的y次幂。这和使用内建的**
运算符略有不同,math.pow()
总是返回一个浮点数,而**
运算符会返回整数类型,如果两个操作数都是整数。 -
math.sqrt(x)
: 返回x的平方根。等同于math.pow(x, 0.5)
。 -
math.exp(x)
: 返回e的x次幂。这个函数在计算较大的x时比math.pow(math.e, x)
更精确。 -
math.log(x[, base])
: 如果没有提供base,返回x的自然对数(以e为底)。如果提供了base,返回以base为底x的对数。 -
math.log1p(x)
: 返回1+x的自然对数(以e为底)。对于很小的x,这个函数比math.log(1+x)
更精确。 -
math.log2(x)
: 返回以2为底x的对数。 -
math.log10(x)
: 返回以10为底x的对数。
4、三角函数
(1)三角函数
-
math.sin(x)
: 返回x的正弦值。 -
math.cos(x)
: 返回x的余弦值。 -
math.tan(x)
: 返回x的正切值。
(2)反三角函数:
-
math.asin(x)
: 返回x的反正弦值。x的范围必须在-1到1之间。 -
math.acos(x)
: 返回x的反余弦值。x的范围必须在-1到1之间。 -
math.atan(x)
: 返回x的反正切值。 -
math.atan2(y, x)
: 返回y/x的反正切值,考虑了值的符号,所以可用于确定坐标系中点(y, x)的角度。返回值范围为-π
至π
。
(3)角度和弧度转换函数
-
math.radians(x)
: 将角度x转换为弧度。 -
math.degrees(x)
: 将弧度x转换为角度。
5、高级函数
(1)组合和排列
-
math.comb(n, k)
: 返回n个物品中取k个的组合数。只在Python 3.8及以上版本可用。 -
math.perm(n, k)
: 返回n个物品中取k个的排列数。只在Python 3.8及以上版本可用。
(2)指数和对数函数
-
math.expm1(x)
: 返回e的x次幂减1。对于很小的x,这个函数比math.exp(x)-1
更精确。 -
math.log1p(x)
: 返回1+x的自然对数。对于很小的x,这个函数比math.log(1+x)
更精确。
(3)双曲函数和反双曲函数
-
math.sinh(x)
: 返回x的双曲正弦。 -
math.cosh(x)
: 返回x的双曲余弦。 -
math.tanh(x)
: 返回x的双曲正切。 -
math.asinh(x)
: 返回x的反双曲正弦。 -
math.acosh(x)
: 返回x的反双曲余弦。 -
math.atanh(x)
: 返回x的反双曲正切。
(4)特殊函数
-
math.gamma(x)
: 返回x的Gamma函数值。Gamma函数是阶乘函数的扩展,可以接受实数或复数输入。 -
math.lgamma(x)
: 返回x的Gamma函数的自然对数的绝对值。 -
math.erf(x)
:返回x的误差函数值。
6、复数运算
虽然复数运算主要在cmath模块中进行,但math模块也提供了一些处理复数的函数:
-
math.isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)
:判断两个数是否接近。rel_tol
是相对容差,abs_tol
是绝对容差。这是一种更为科学的比较浮点数的方法。 -
math.isfinite(x)
:如果x是正无穷大、负无穷大或NaN,则返回False,否则返回True。 -
math.isinf(x)
:如果x是正无穷大或负无穷大,则返回True,否则返回False。 -
math.isnan(x)
:如果x是NaN,则返回True,否则返回False。
7、取整函数
-
math.floor(x)
: 返回小于或等于x的最大整数。换句话说,对x向下取整。 -
math.ceil(x)
: 返回大于或等于x的最小整数。换句话说,对x向上取整。 -
math.trunc(x)
: 返回x的整数部分。它的行为类似于向0取整,也就是说,如果x是正数,它的行为类似于math.floor(x)
,如果x是负数,它的行为类似于math.ceil(x)
。 -
math.modf(x)
: 返回x的小数部分和整数部分。返回值是一个元组,第一个元素是x的小数部分,第二个元素是x的整数部分。
这些函数在统计学和物理学等领域有着广泛的应用。
希望这些信息能帮助你更深入的理解Python的math模块。官方文档(https://docs.python.org/3/library/math.html)是学习math模块最好的资源,其中包含了所有函数的详细说明和示例。
更多推荐
所有评论(0)