Python入门(四)数学类函数总结

数学常量

  • 圆周率:pi;
  • 自然常数:e。

数学函数

  • 返回数字的绝对值,且值的类型取决于原参数的类型(复数返回浮点型):abs( x )
    x---数值
>>> abs(-1.23)
1.23
>>> abs(3+4j)
5.0
  • 返回浮点数或整数的绝对值,且值的类型只能是浮点型:fabs( x )
    x---数值
>>> import math
>>> math.fabs(-1.23)
1.23
  • 返回数字上取后的整数:ceil( x )
    x---数值
>>> import math  # ceil(x)不能直接访问,需先导入 math 模块
>>> math.ceil(-0.74)
0
  • 返回数字下舍后的整数:floor(x)
    x---数值
>>> import math  # floor(x)不能直接访问,需先导入 math 模块
>>> math.floor(-0.74)
-1
  • 返回x的小数部分与整数部分,注意整数部分以浮点型表示:modf(x)
    x---数值
>>> import math   # modf(x)不能直接访问,需先导入 math 模块
>>> math.modf(-111.222)
(-0.2219999999999942, -111.0)
  • 返回浮点数x的四舍五入值:round(x [, n])
    x---浮点数;

n---精度

>>> round(111.222333444, 6)
111.222333
  • 返回x的y次方:pow()
    1)内置方法
>>> pow(2, 3)  #把参数作为整型
8

2)导入math模块

>>> import math  #把参数作为浮点型
>>> math.pow(2, 3)
8.0
  • 返回数字x的平方根:sqrt(x)
    x---数值
>>> import math  # sqrt(x)不能直接访问,需先导入 math 模块
>>> math.sqrt(100)
10.0
  • 返回x的自然对数:log(x)
    x---数值表达式
>>> import math  # log(x)不能直接访问,需先导入 math 模块
>>> math.log(0.1353352832366127)
-2.0
  • 返回x的指数:exp( x )
    x---数值表达式
>>> import math   # exp(x)不能直接访问,需先导入 math 模块
>>> math.exp(-2)
0.1353352832366127
  • 返回给定参数的最大值,参数可以为序列:max( x, y, z, .... )
    x,y,z---数值
>>> max(1, 3, 2)
3
  • 返回给定参数的最小值,参数可以为序列:min( x, y, z, .... )
    x,y,z---数值
>>> min(1, 3, 2)
1

随机数函数

  • 从序列的元素中随机挑选一个元素:choice(seq)
    seq---列表,元组或字符串
>>> import random
>>> print('DJY,are you handsome?',random.choice(['--SURE!','--NOT AT ALL!','--GUESS?']))
DJY,are you handsome? --SURE!
  • 从给定的范围返回随机项:randrange ([start,] stop [,step])
    start---指定范围内的开始值,包含在范围内;

stop---指定范围内的结束值,不包含在范围内;
step---步长,默认为1。

>>> import random
>>> random.randrange(11, 999, 12)
587
  • 返回随机生成的一个实数,它在[0,1)范围内: random()
>>> import random
>>> random.random()
0.5895961190959703
  • 改变随机数生成器的种子,可以在调用其他随机模块函数之前调用此函数:seed(x)
    x---改变随机数生成器的种子,可不设置
>>> import random
>>> random.seed(10)
>>> random.random()
0.5714025946899135
>>> random.seed(10)
>>> random.random()
0.5714025946899135
  • 随机生成一个在[x,y]范围内的实数:uniform(x, y)
    x---最小随机数;

y---最大随机数;

>>> import random
>>> random.uniform(0.15,578)
168.77383737106067
  • 返回随机排序后的序列:shuffle (lst)
    lst---列表
>>> import random
>>> list1 = ['酷狗音乐','网易云音乐','QQ音乐', '虾米音乐']
>>> random.shuffle(list1)
>>> list1
['QQ音乐', '虾米音乐', '酷狗音乐', '网易云音乐']

三角函数

  • 返回x的反正弦、反余弦弧度值:asin(x) 、acos(x)
    x--- -1到1之间的数值
>>> import math
>>> math.acos(0.55)
0.9884320889261531
>>> import math
>>> math.asin(0.55)
0.5823642378687435
  • 返回x的反正切弧度值:atan(x)
    x---数值
>>> import math
>>> math.atan(0.55)
0.5028432109278609
  • 返回给定的 X 及 Y 坐标值的反正切值:atan2(y, x)
    x,y---数值
>>> import math
>>> math.atan2(0.55,0.55)
0.7853981633974483
  • 返回x的弧度的正弦值、余弦值、正切值:sin(x)、cos(x)、tan(x)
    x---数值
>>> import math
>>> math.sin(0.55)
0.5226872289306592
>>> import math
>>> math.cos(0.55)
0.8525245220595057
>>> import math
>>> math.tan(0.55)
0.6131052132881357
  • 返回欧几里德范数 sqrt(x*x + y*y):hypot(x,y)
    x,y---数值
>>> import math
>>> math.hypot(1,2)
2.23606797749979
  • 将弧度转换为角度:degrees(x)
    x---数值
>>> import math
>>> math.degrees(-2)
-114.59155902616465
  • 角度转换为弧度:radians()
    x---数值
>>>import math
>>> math.radians(-2)
-0.03490658503988659

最后有点感想,对于函数,往往看中的是它的功能以及返回值,有些函数功能很类似,但是不要忽略了,他们运行速度的微略差距,也许很不起眼,但是并不渺小。

END!

上一篇:四级嵌入式系统开发工程师-计算题题库


下一篇:Python入门(二)快捷键、操作符和BIF