運算裡不得不說的python模塊—math

概述

在數學之中,除了加減乘除四則運算之外,還有其它更多的運算,比如乘方、開方、對數運算等等,如果要在python中實現這些運算,需要用到python中的一個模塊:Math

  • 簡單過一下即可,不用記..

使用math模塊

math模塊是標準庫中的,所以不用安裝,可以直接使用。使用方法是:

<code>>>> import math/<code>

用import就將math模塊引用過來了,下面就可以使用這個模塊提供的工具了。比如,要得到圓周率:

<code>>>> math.pi
3.141592653589793/<code>

這個模塊都能做哪些事情呢?可以用下面的方法看到:

<code>>>> dir(math)
['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'hypot', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']/<code>

dir(module)是一個非常有用的指令,可以通過它查看任何模塊中所包含的工具。從上面的列表中就可以看出,在math模塊中,可以計算正sin(a),cos(a),sqrt(a)......

這些我們稱之為函數,也就是在模塊math中提供了各類計算的函數,比如計算乘方,可以使用pow函數。但是,怎麼用呢?


python是一個非常周到的姑娘,她早就提供了一個命令,讓我們來查看每個函數的使用方法。

<code>>>> help(math.pow)/<code>

在交互模式下輸入上面的指令,然後回車,看到下面的信息:

<code>Help on built-in function pow in module math:

pow(...)
pow(x, y)

Return x**y (x to the power of y)./<code>

這裡展示了math模塊中的pow函數的使用方法和相關說明。

  1. 第一行意思是說這裡是math模塊的內建函數pow幫助信息(所謂built-in,稱之為內建函數,是說這個函數是python默認就有的)
  2. 第三行,表示這個函數的參數,有兩個,也是函數的調用方式
  3. 第四行,是對函數的說明,返回x**y的結果,並且在後面解釋了x**y的含義。
  4. 最後,按q鍵返回到python交互模式

從上面看到了一個額外的信息,就是pow函數和x**y是等效的,都是計算x的y次方。

<code>>>> 4**2
16
>>> math.pow(4,2)
16.0
>>> 4*2

8/<code>

特別注意,4**2和4*2是有很大區別的。

用類似的方法,可以查看math模塊中的任何一個函數的使用方法。

關於“函數”的問題,在這裡不做深入闡述,看管姑且按照自己在數學中所學到去理解。後面會有專門研究函數的章節。

下面是幾個常用的math模塊中函數舉例,大家也可以結合自己調試的進行比照。

運算裡不得不說的python模塊—math

運算裡不得不說的python模塊—math

運算裡不得不說的python模塊—math

運算裡不得不說的python模塊—math

運算裡不得不說的python模塊—math

運算裡不得不說的python模塊—math

<code>>>> math.sqrt(9)
3.0
>>> math.floor(3.14)
3.0
>>> math.floor(3.92)
3.0
>>> math.fabs(-2) #等價於abs(-2)
2.0
>>> abs(-2)
2
>>> math.fmod(5,3) #等價於5%3
2.0
>>> 5%3/<code>
運算裡不得不說的python模塊—math



模塊函數

以下的函數是該模塊所提供的。除非明確指出,否則所有返回值都是浮點數。

運算裡不得不說的python模塊—math


運算裡不得不說的python模塊—math


運算裡不得不說的python模塊—math


運算裡不得不說的python模塊—math


運算裡不得不說的python模塊—math


運算裡不得不說的python模塊—math



覺得有用的朋友多幫忙轉發哦!後面會分享更多devops和DBA方面的內容,感興趣的朋友可以關注下~


運算裡不得不說的python模塊—math


分享到:


相關文章: