python学习日记(2)-- 数学函数(math库)

1. fabs(x):返回x的浮点型绝对值

import math

print(math.fabs(-10))
print(math.fabs(-78.09))
10.0
78.09

2. ceil(x): 返回不小于x的最小整数,即向上取整

import math

print(math.ceil(-9.9))
print(math.ceil(4.2))
print(math.ceil(8))
-9
5
8

3.  floor(x): 返回不大于x的最大整数,即向下取整

import math

print(math.floor(-6.7))
print(math.floor(2.1))
print(math.floor(10))
-7
2
10

4. modf(x): 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示

import math

print(math.modf(2.5))
print(math.modf(-3.7))
(0.5, 2.0)
(-0.7000000000000002, -3.0)

5. exp(x): 返回e的x次幂

import math


print(math.exp(2))
print(math.exp(1))
print(math.exp(3.5))
7.38905609893065
2.718281828459045
33.11545195869231

6. log(x):  使用一个参数,返回 x 的自然对数(底为 e );  使用两个参数,返回给定的 base 的对数 x

import math

print(math.log(math.e))
print(math.log(1))
print(math.log(4, 2))
1.0
0.0
2.0

7. pow(x, y): 将返回 x 的 y 次幂。 pow() 通过内置的方法直接调用,内置方法会把参数作为整型,而 math 模块则会把参数转换为 float。x 是负数, y 不是整数那么 pow(x,y) 会报 ValueError

import math

print(math.pow(2, 3))
print(math.pow(3, 4.6))
print(math.pow(5.3, 9.8))
print(math.pow(-2, 7.2))
8.0
156.58774563947273
12528628.222995257

ValueError: math domain error

8. sqrt(x): 返回x的平方根,浮点型

import math

print(math.sqrt(100))
print(math.sqrt(45))
print(math.sqrt(3.8))
10.0
6.708203932499369
1.9493588689617927

9. 常数

  • math.pi: 圆周率
  • math.e: 自然对数底
  • math.inf: 无穷大
  • math.nan: 非数字
import math

print(math.pi)
print(math.e)
print(math.inf)
print(math.nan)
3.141592653589793
2.718281828459045
inf
nan

10. python内置数学函数

  • abs(x): 返回数字的绝对值, math.fabs() 函数只适用于浮点和整型,而 abs() 也适用于复数,复数的绝对值是对复数取模abs(x+yJ)= math.sqrt(x**2+y**2)
import math

print(abs(1.0 - 2.2j))
print(math.sqrt(1+2.2**2))
2.4166091947189146
2.4166091947189146
  • round(x, n=0):   返回浮点数 x 的四舍五入值,准确的说保留值将保留到离上一位更近的一端(四舍六入)。n表示以小数点后n位数计算,默认值为 0。
print(round(2.6))
print(round(2.3456, 3))
print(round(1.5), round(2.5))
3
2.346
2 2

注意:为何1.5和2.5四舍五入之后都等于2?

round()函数是返回距离两端更近的一端。1.5离两端1和2的距离相同,2.5离两端2和3的距离相同。在Python3中,如果距离两边一样远,会保留到偶数的一边。所以round(1.5)和round(2.5)都会保留到2。

round()计算并不精确,对于精确度要求较高的场景,使用decimal模块

  • pow(x, y[, z]):  math.pow()函数会把参数转换为浮点型,而内建的pow()把参数直接作为整型,因此,在使用大整数时,math.pow()可能会出现误差。
print(math.pow(51, 10) % 1001)
print(pow(51, 10) % 1001)
723.0
716
  • max(x1,x2,...): 返回序列中的最大值
  • min(x1,x2,...):返回序列中的最小值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天凛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值