math 模塊

該模塊提供了由C語言標準定義的數學函數。

還有一個模塊叫cmath,其中定義的方法和屬性與math模塊基本相同,只是cmath適用於複數(complex)。

常用屬性

名稱
math.pi 3.141592653589793
math.e 2.718281828459045
math.inf inf
math.nan nan
math.tau 6.283185307179586

*注:*對於無窮數除了用math.inf,還可以用float(‘inf’)表示正無窮;-float(‘inf’)或float(’-inf’)表示負無窮。

常用方法

三角函數

三角函數返回結果爲弧度值。

名稱 含義
math.acos(x) 反餘弦
math.acosh(x) 反雙曲餘弦
math.asin(x) 反正弦
math.asinh(x) 反雙曲餘弦
math.atan(x) 反正切
math.atan2(x,y) x/y的反正切,與atan(y/x)不同,x和y的符號均被考慮
math.atanh(x) 反雙曲正切
math.cos(x) 餘弦
math.cosh(x) 雙曲餘弦
math.sin(x) 正弦
math.sinh(x) 雙曲正弦
math.tan(x) 正切
math.tanh(x) 雙曲正切
math.degrees(x) 將弧度值轉爲角度值
math.radians(x) 將角度值轉爲弧度值
取整、取小數的函數
名稱 含義
math.ceil(x) 返回不小於x的整數,即:向上取整
math.floor(x) 返回不大於x的整數,即:向下取整
math.trunc(x) 返回整數部分,和int等效
math.modf(x) 返回小數和整數部分,都爲浮點數,都帶x的符號
指數、對數函數
名稱 含義
math.exp(x) 以e爲底的指數
math.expm1(x) 以e爲底的指數後減1,對x較小的情況進行精確計算
math.log(x[, base]) 返回底爲base的對數,默認爲e
math.log10(x) 底爲10的對數
math.log2(x) 底爲2的對數
math.log1p(x) 返回1+x的自然對數(底爲e),對x接近零的結果進行精確計算
判斷函數
名稱 含義
math.isfinite(x) 判斷x是否有限(非inf,非nan)
math.isinf(x) 判斷x是否是無窮
math.isnan(x) 判斷x是否是NaN(Not a Number)
math. isclose(a,b, rel_tol=1e-09, abs_tol=0.0) 判斷兩個浮點數值是否接近。rel_tol表示最大相對差異,abs_tol表示最大絕對差異。*注:*nan和誰都不接近;inf只和自己接近
其他函數
名稱 含義
math.fabs(x) 絕對值
math.gcd(x,y) x和y的最大公約數
math.sqrt(x) 平方根
math.factorial(x) x的階乘,若x負數或小數,則報錯
math.hypot(x,y) 歐氏距離,即:sqrt(x*x + y*y)
math.pow(x,y) x的y次方
math.fmod(x,y) x對y取餘,根據C平臺計算,結果可能與x%y不同
math.fsum(iterable) 返回浮點數之和的精確值
math.ldexp(x,i) x * (2**i)
math.frexp(x) ldexp的反函數,返回x的尾數和指數
math.gamma(x) x處的Gamma函數
math.lgamma(x) x處Gamma函數的絕對值的自然對數
math.erf(x) x處的誤差函數
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章