Python 中的数学函数?
pythonserver side programmingprogramming
在 Python 中,从简单到复杂的数学运算(如三角函数、对数运算等),我们可能需要使用 math() 模块。
Python math 模块用于访问数学函数。 math() 函数的所有方法均用于整数或实数类型对象,但不用于复数。
要使用此函数,我们需要在代码中导入它
import math
常量
我们在 python 中使用这些常量进行计算 -
常量 | 描述 |
---|---|
Pi | 返回 pi 的值:3.141592 |
E | 返回自然底数 e 的值。 e 为 0.718282 |
tau | 返回 tau 的值。 tau = 6.283185 |
inf | 返回无穷大 |
nan | 不是数字类型 |
数字和数值表示
Python 提供了不同的函数,用于以不同的形式表示数字,例如 -
函数 | 描述 |
---|---|
Ceil(x) | 它返回上限值,即大于或等于数字 x 的最小值。 |
copysign(x, y) | 返回 x 的数字并将 y 的符号复制到 x。 |
fabs(x) | 返回 x 的绝对值。 |
factorial(x) | 返回 x 的阶乘,其中 x>=0 |
floor(x) | 返回小于或等于数字 x 的最大整数的下限值。 |
fsum(iterable) | 返回可迭代对象中元素的总和 |
gcd(x,y) | 返回 x 和y。 |
isfinite(x) | 检查 x 是否既不是无穷大也不是 nan。 |
isinf(x) | 检查 x 是否为无穷大 |
isnan(s) | 检查 s 是否不是数字 |
remainder(x,y) | 求 x 除以 y 后的余数。 |
让我们编写一个程序来演示上述数学函数的使用 -
#导入数学库 import math #Floor 和 Ceiling print('9.45 的下限和上限值为: ' + str(math.ceil(9.45)) + ', ' + str(math.floor(9.45))) #Copysign x = 94 y = -27 print('从 y 复制符号后 x 的值: ' + str(math.copysign(x, y))) #Absolute print('-94 和 54 的绝对值为:' + str(math.fabs(-94)) + ', ' + str(math.fabs(54))) #Fsum & gcd my_list = [12, 9.25, 89, 3.02, -75.23, -7.2, 6.3] print('列表元素之和:' + str(math.fsum(my_list))) print('24 和 56 的 GCD:' + str(math.gcd(24, 48))) #isnan x = float('nan') if math.isnan(x): print('这不是一个数字') x = float('inf') #isinf y = 54 if math.isinf(x): print('这是无穷大') #x 不是有限数 print(math.isfinite(x)) #y 是有限数 print(math.isfinite(y))
结果
9.45 的下限和上限值为:10、9 从 y 复制符号后 x 的值为:-94.0 -94 和 54 的绝对值为:94.0、54.0 列表元素之和:37.13999999999999 24 和 56 的最大公约数:24 这不是一个数字 这是无穷大 false true
幂和对数函数
这些函数用于在 Python 中计算不同的幂和对数相关任务。
函数 | 描述 |
---|---|
pow(x,y) | 返回 x 的 y 次方值 |
sqrt(x) | 求 x 的平方根 |
exp(x) | 求 xe,其中 e = 2.718281 |
log(x[,base]) | 返回给定底数的 x 的对数。默认底数为 e |
log2(x) | 返回 x 的对数,其中底数为 2 |
log10(x) | 返回 x 的对数,其中底数为 10 |
示例程序演示上述函数的使用
import math print("2^5 的值:" + str(math.pow(2, 5))) print("625 的平方根:" + str(math.sqrt(625))) print("5^e 的值:" + str(math.exp(5))) print("以 5 为底的 log(625) 的值: " + str(math.log(625, 5))) print("以 10 为底的 log(1024) 的值: " + str(math.log10(1024))) print("以 2 为底的 log(1024) 的值: " + str(math.log2(1024)))
结果
2^5 的值: 32.0 625 的平方根: 25.0 5^e 的值: 148.4131591025766 以 5 为底的 log(625) 的值: 4.0 以 10 为底的 log(1024) 的值: 3.010299956639812 log(1024) 的值,以 2 为底:10.0
三角函数和角度转换函数
这些函数用于计算不同的三角运算 -
函数 | 描述 |
---|---|
sin(x) | 以弧度返回 x 的正弦值 |
cos(x) | 以弧度返回 x 的余弦值 |
tan(x) | 以弧度返回 x 的正切值 |
asin(x) | 返回正弦的倒数,类似地,我们有 acos, atan 也 |
degrees(x) | 它将角度 x 从弧度转换为度 |
radians(x) | 它将角度 x 从度转换为弧度 |
示例程序演示上述函数的使用
import math print("sin(45 度) 的值:" + str(math.sin(math.radians(45)))) print('cos(pi) 的值:' + str(math.cos(math.pi))) print("tan(45度)的值:" + str(math.tan(math.pi/2))) print("sin(0.95504050560)的角度:" + str(math.degrees(math.sin(0.95504050560))))
结果
sin(45度)的值:0.7071067811865475 cos(pi)的值:-1.0 tan(45度)的值:1.633123935319537e+16 sin(0.95504050560):46.77267256206895