python math模塊的基本使用教程
what's the math 模塊
Python math 模塊提供了許多對(duì)浮點(diǎn)數(shù)的數(shù)學(xué)運(yùn)算函數(shù)。需要注意的是,這些函數(shù)一般是對(duì)平臺(tái) C 庫中同名函數(shù)的簡(jiǎn)單封裝, 所以一般情況下, 不同平臺(tái)下計(jì)算的結(jié)果可能稍微地有所不同, 有時(shí)候甚至有很大出入。
主要功能有:
- 冪數(shù):冪次方、平方根
- 對(duì)數(shù):2、10、e相關(guān)的對(duì)數(shù)操作
- 圓相關(guān):π、弧度與角度的轉(zhuǎn)換
- 三角函數(shù):正三角函數(shù)、反三角函數(shù)
- 其他常用:小數(shù)的整數(shù)部分、向上取整、向下取整、兩個(gè)數(shù)的最大公約數(shù)、取余數(shù)...
冪數(shù)
冪與平方根
# pow(x, y):返回x的y次方 print(math.pow(2, 4)) # 2**4 # ldexp(x, i):返回x*(2**i)的值 print(math.ldexp(5, 2)) # 5*(2**2)=20.0 # sqrt(x):求x的平方根 print(math.sqrt(16)) # 4.0 # factorial(x):取x的階乘的值 print(math.factorial(5)) # 5*4*3*2*1 # 120 # hypot(x, y):得到(x**2+y**2)的平方根 print(math.hypot(3, 4)) # 5
常數(shù)e相關(guān)
import math # 常數(shù)e math.e # 2.718281828459045 # exp(x):返回常數(shù)e的x次方 math.exp(2) # 7.38905609893065,相當(dāng)于math.e**2 # expm1:返回常數(shù)e的x次方的值減1 math.expm1(1) # 1.718281828459045,相當(dāng)于math.exp(1) - 1
對(duì)數(shù)
# log2(x):返回x的基2對(duì)數(shù) print(math.log2(128)) # 7 # log10(x):返回x的以10為底的對(duì)數(shù) print(math.log10(100)) # 2 # log(x, base):返回x的自然對(duì)數(shù),默認(rèn)以e為基數(shù),base參數(shù)給定時(shí),將x的對(duì)數(shù)返回給定的base,計(jì)算式為:log(x)/log(base) print(math.log(256, 4)) # 4 # log1p(x)::返回x+1的自然對(duì)數(shù)(基數(shù)為e)的值 print(math.log1p(5))
圓相關(guān)
# pi:常數(shù)π,圓周率 print(math.pi) # 3.141592653589793 angle = 30 # 30度 # radians:把角度x轉(zhuǎn)換成弧度 print(math.radians(angle)) # 0.5235987755982988 print(30*math.pi/180) # 效果相同 # degrees:把x從弧度轉(zhuǎn)換成角度 temp = math.radians(angle) print(math.degrees(temp)) # 29.999999999999996
三角函數(shù)
sin、cos、tan
math 模塊對(duì)正三角函數(shù)的計(jì)算,變量是弧度,所以在計(jì)算時(shí)需要先將角度轉(zhuǎn)換為弧度
angle = 30 # 30度 radian = math.radians(angle) # 角度轉(zhuǎn)換成弧度 print(math.sin(radian)) print(math.cos(radian)) print(math.tan(radian))
asin和acos和atan
math 模塊對(duì)反三角函數(shù)的計(jì)算,返回值是弧度
h = math.asin(0.5) # sin(30) = 0.5 print(math.degrees(h)) # 30.000000000000004 h = math.acos(0.5) # cos(60) = 0.5 print(math.degrees(h)) # 60.00000000000001 h = math.atan(1) # tan(45) = 1 print(math.degrees(h)) # 45.0
sinh和cosh和tanh,asinh和acosh和atanh
雙曲正弦、余弦、正切,反雙曲正弦、余弦、正切
其他
# trunc(x):返回x的整數(shù)部分 print(math.trunc(8.3)) # 8 # ceil(x):取大于等于x的最小的整數(shù)值,如果x是一個(gè)整數(shù),則返回x print(math.ceil(10.2)) # 11 # floor(x):取小于等于x的最大的整數(shù)值,如果x是一個(gè)整數(shù),則返回自身 print(math.floor(15.3)) # 15 # fabs(x):返回x的絕對(duì)值 print(math.fabs(-13)) # 13.0 # modf(x):返回由x的小數(shù)部分和整數(shù)部分組成的元組 print(math.modf(132.333)) # (0.3329999999999984, 132.0) # copysign(x, y):把y的正負(fù)號(hào)加到x前面,可以使用0 print(math.copysign(10 ,-15)) # -10.0 # fmod(x, y):得到x/y的余數(shù),其值是一個(gè)浮點(diǎn)數(shù) print(math.fmod(15, 2)) # 1.0 # gcd(x, y):返回x和y的最大公約數(shù) print(math.gcd(8, 100)) # 4 # frexp(x):返回一個(gè)元組(m,e),其計(jì)算方式為:x分別除0.5和1,得到一個(gè)值的范圍 print(math.frexp(10)) # fsum(x):對(duì)迭代器里的每個(gè)元素進(jìn)行求和操作 print(math.fsum([1, 2, 3, 4])) # 10.0 # isfinite(x):如果x是正無窮大或負(fù)無窮大,則返回True,否則返回False # # isinf(x):如果x是正無窮大或負(fù)無窮大,則返回True,否則返回False # # isnan(x):如果x不是數(shù)字True,否則返回False print(math.isnan(1.222))
進(jìn)階應(yīng)用
計(jì)算2個(gè)坐標(biāo)點(diǎn)的距離
import math x1 = 0 y1 = 20 x2 = 12 y2 = 0 p1 = (x1, y1) p2 = (x2, y2) result = math.sqrt(math.pow(x1 - x2, 2) +math.pow(y1 - y2, 2))
以上就是python math模塊的基本使用教程的詳細(xì)內(nèi)容,更多關(guān)于python math模塊的使用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- 詳解Python中math和decimal模塊的解析與實(shí)踐
- Python內(nèi)置數(shù)學(xué)函數(shù)和math模塊使用指南
- python常用模塊(math itertools functools sys shutil)使用講解
- python數(shù)學(xué)模塊(math/decimal模塊)
- Python標(biāo)準(zhǔn)庫之Math,Random模塊使用詳解
- Python中非常實(shí)用的Math模塊函數(shù)教程詳解
- 表格梳理python內(nèi)置數(shù)學(xué)模塊math分析詳解
- 一看就懂得Python的math模塊
- Python中Random和Math模塊學(xué)習(xí)筆記
- Python math 模塊完全指南
相關(guān)文章
python數(shù)據(jù)庫如何連接SQLite詳解
這篇文章主要介紹了Python實(shí)現(xiàn)連接SQLite數(shù)據(jù)庫的方法,在Python數(shù)據(jù)庫編程中有著廣泛的應(yīng)用,需要的朋友可以參考下,希望能給你帶來幫助2021-08-08python3 對(duì)list中每個(gè)元素進(jìn)行處理的方法
今天小編就為大家分享一篇python3 對(duì)list中每個(gè)元素進(jìn)行處理的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-06-06利用Python如何將數(shù)據(jù)寫到CSV文件中
在數(shù)據(jù)分析中經(jīng)常需要從csv格式的文件中存取數(shù)據(jù)以及將數(shù)據(jù)寫書到csv文件中。下面這篇文章主要給大家介紹了關(guān)于利用Python如何將數(shù)據(jù)寫到CSV文件中的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2018-06-06