Python的math模塊為我們提供了一系列關(guān)于數(shù)學(xué)方面的功能,可以幫助我們進行指數(shù)、對數(shù)、平方根、三角函數(shù)等運算。
1. 冥和對數(shù)
我們在求某個數(shù)的平方根或者是平方和又或者是冪運算的時候,往往要借助math模塊。
取對數(shù)運算:math.log(x[,底數(shù)]),這種方式會返回一個以基數(shù)為底的x的對數(shù),如果省略底數(shù)就是以2為底。
例如:
import math a = math.log(144,12) b = math.log(36,6) print(a) print(b)
輸出結(jié)果為:
2.0 2.0
取平方根運算:math.sqrt(x),返回x的平方根。
例如:
import math a = math.sqrt(16) b = math.sqrt(256) print(a) print(b)
輸出結(jié)果為:
4.0 16.0
取冪運算:pow(x,y),返回的是x的y次冪。
例如:
import math a = math.pow(2,4) b = math.pow(10,3) print(a) print(b)
輸出結(jié)果為:
16.0 1000.0
2. 三角函數(shù)
三角函數(shù)的使用和上面的用法類似。
三角正弦值:math.sin(x)
三角余弦值:math.cos(x)
三角正切值:math.tan(x)
弧度的反正弦:math.asin(x)
弧度的反余弦:math.acos(x)
弧度的反正切:math.atan(x)
如果是將弧度轉(zhuǎn)換為角度或者將角度轉(zhuǎn)換為弧度,采用下面的用法。
弧度轉(zhuǎn)角度:math.degress(x)
角度轉(zhuǎn)弧度:math.radinans(x)
看下面的例子:
import math a = math.sin(30) b = math.cos(30) c = math.tan(30) d = math.asin(0.6) e = math.acos(0.6) f = math.atan(0.6) g = math.degrees(2 * math.pi) h = math.radians(360 / math.pi) print(a) print(b) print(c) print(d) print(e) print(f) print(g) print(h)
輸出結(jié)果為:
-0.9880316240928618 0.15425144988758405 -6.405331196646276 0.6435011087932844 0.9272952180016123 0.5404195002705842 360.0 2.0
需要注意的是我們在Python里使用math.pi來表示‘π’。
3. 舍入函數(shù)
math模塊中還提供了幾個函數(shù)幫助我們進行舍入操作。
math.ceil(x):返回大于x或等于x的最小整數(shù)。
math.floor(x):返回小于x或等于x的最大整數(shù)。
同時在Python中有一個內(nèi)置函數(shù)round(x)為我們提供四舍五入的操作。
代碼如下:
import math a = math.ceil(3.5) b = math.floor(3.5) c = round(3.5) d = round(3.4) print(a) print(b) print(c) print(d)
輸出結(jié)果為:
4 3 4 3
4. 總結(jié)
本節(jié)中主要為大家講述了Python中math模塊的用法,需要注意的是math模塊中的函數(shù)只適用于整數(shù)和浮點數(shù),如果是復(fù)數(shù)的話我們要采用cmath模塊,在這里就不作過多的介紹,math模塊是系統(tǒng)內(nèi)置的模塊,在設(shè)計到數(shù)學(xué)運算的時候我們可以直接進行引入并使用。
C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點擊了解:
一點編程也不會寫的:零基礎(chǔ)C語言學(xué)練課程
解決困擾你多年的C語言疑難雜癥特性的C語言進階課程
從零到寫出一個爬蟲的Python編程課程
只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程
信息學(xué)奧賽或C++選手的 必學(xué)C++課程
藍橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競賽課入門課程
手把手講解近五年真題的藍橋杯輔導(dǎo)課程