python中math常用函数

时间:2023-12-15 09:31:20

python中math的使用

import math   #先导入math包

1 三角函数

print math.pi #打印pi的值
3.14159265359
print math.radians(180)  #把度数转化为弧度,即180=pi
3.14159265359
sin90 = math.sin(math.pi/2)  #计算sin(pi/2)
sin180 = math.sin(math.pi) #计算sin(pi)
cos90 = math.cos(math.pi/2) #计算cos(pi/2)
cos180 = math.cos(math.pi) #计算cos(pi)
print 'sin90 is {} ,sin180 is {} ;cos90 is {} ,cos180 is {} .'.format(sin90,sin180,cos90,cos180)
sin90 is 1.0  ,sin180 is 1.22464679915e-16  ;cos90 is 6.12323399574e-17  ,cos180 is -1.0  .

从上面可以看到sin(pi)和cos(pi/2)都不为0,而是一个很接近0的数,这是因为math.pi不是精确的pi。pi是一个无理数,而机器在存储无理数时只会根据精度截取其中一部分,也就是说机器会根据精度用有理数来代替无理数。所以这里的计算会存在一些误差,但这里的误差已经到了10的-16次,这对计算机来说已经非常小了,一般我们要求的误差是10的-5次。

当然啦,我们也可以指定输出浮点数的位数,如下:

print ('%.3f'%(sin180))  #保留3位小数
0.000

2 乘方 开方

#乘方开方,可以借助math中的pow函数
print math.pow(10,3) #10是底数,3是指数
print math.pow(27,1/3)
1000.0
1.0

从上面的结果可以看到math.pow()函数得出的结果是浮点数。如果我们希望乘方的结果是整数的话,我们也可以使用下面的方法。

print 10**3
1000

3 上下取整

print math.floor(3.14)#向下取整
3.0
print math.ceil(3.14)#向上取整
4.0

4 取最大最小值

min(1,100,90,700)  #取最小值
1
max(1,100,90,700)   #取最大值
700

5 求和

sum([1,2,3,4,5])
15

6 同时取商和余数

divmod(10,3)  #求10除以3的商和余数
(3, 1)