Python math 模塊完全指南
更新時間:2025年04月01日 15:52:20 作者:清風明月_xf
本文主要介紹了Python math 模塊完全指南,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
一、模塊概述
math 模塊是 Python 標準庫中的數(shù)學運算模塊,提供:
- 基礎數(shù)學運算函數(shù)
- 三角函數(shù)與雙曲函數(shù)
- 數(shù)論相關函數(shù)
- 特殊數(shù)學常數(shù)
- 對數(shù)與指數(shù)計算
import math # 標準導入方式
二、核心功能詳解
1. 數(shù)值處理函數(shù)
| ?函數(shù) | ?描述 | ?示例 |
|---|---|---|
| ceil(x) | 向上取整 | ceil(3.2) → 4 |
| floor(x) | 向下取整 | floor(3.8) → 3 |
| fabs(x) | 絕對值(浮點型) | fabs(-5) → 5.0 |
| factorial(x) | 階乘計算 | factorial(5) → 120 |
| gcd(a, b) | 最大公約數(shù) | gcd(12, 18) → 6 |
| fsum(iter) | 精確浮點求和 | fsum([0.1]*10) → 1.0 |
print(math.ceil(math.pi)) # 4 print(math.floor(math.e)) # 2 print(math.gcd(48, 18)) # 6
2. 冪與對數(shù)
| ?函數(shù) | ?描述 | ?數(shù)學公式 |
|---|---|---|
| sqrt(x) | 平方根 | √x |
| pow(x, y) | x的y次冪 | x? |
| exp(x) | e的x次冪 | e? |
| log(x[, b]) | 對數(shù)(默認自然對數(shù)) | log_b(x) |
print(math.sqrt(256)) # 16.0 print(math.log(100, 10)) # 2.0 print(math.exp(2)) # 7.38905609893065
3. 三角函數(shù)
| ?函數(shù) | ?描述 | ?輸入單位 |
|---|---|---|
| sin(x) | 正弦函數(shù) | 弧度 |
| cos(x) | 余弦函數(shù) | 弧度 |
| tan(x) | 正切函數(shù) | 弧度 |
| degrees(x) | 弧度轉角度 | - |
| radians(x) | 角度轉弧度 | - |
angle = math.radians(45) print(math.sin(angle)) # 0.7071067811865476 print(math.degrees(math.pi)) # 180.0
三、特殊常數(shù)與函數(shù)
1. 數(shù)學常數(shù)
| ?常數(shù) | ?值 | ?精度 |
|---|---|---|
| math.pi | π ≈ 3.141592653589793 | 15位小數(shù) |
| math.e | 自然對數(shù)底 ≈ 2.718281828459045 | 15位小數(shù) |
| math.tau | τ = 2π ≈ 6.283185307179586 | 15位小數(shù) |
| math.inf | 正無窮大 | IEEE 754 |
| math.nan | 非數(shù)值 | IEEE 754 |
2. 高級函數(shù)
| ?函數(shù) ? | 描述 |
|---|---|
| gamma(x) | Gamma函數(shù) |
| erf(x) | 誤差函數(shù) |
| comb(n, k) | 組合數(shù) C(n,k) |
| isclose(a,b) | 浮點數(shù)近似相等判斷 |
print(math.comb(10,3)) # 120 (Python 3.10+) print(math.gamma(5)) # 24.0 (等效 4! ) print(math.isclose(0.1+0.2, 0.3)) # True
四、實戰(zhàn)應用案例
1. 幾何計算
def circle_area(radius):
return math.pi * radius**2
def sphere_volume(radius):
return (4/3) * math.pi * radius**3
2. 概率計算
def normal_pdf(x, mu=0, sigma=1):
"""正態(tài)分布概率密度函數(shù)"""
coeff = 1 / (sigma * math.sqrt(2*math.pi))
exponent = -0.5 * ((x - mu)/sigma)**2
return coeff * math.exp(exponent)
3. 工程計算
def compound_interest(principal, rate, years):
"""復利計算"""
return principal * math.exp(rate * years)
五、注意事項
- ?輸入類型:所有函數(shù)僅接受整數(shù)或浮點數(shù),不接受復數(shù)(使用
cmath處理復數(shù)) - ?精度限制:浮點數(shù)計算存在精度誤差(如
math.sqrt(2)**2 ≠ 2) - ?異常處理:
try:
print(math.sqrt(-1))
except ValueError as e:
print("錯誤:", e) # 負數(shù)平方根
- 版本差異:
math.prod()需要Python 3.8+math.comb()需要Python 3.10+
六、性能優(yōu)化建議
- 批量計算優(yōu)先使用
NumPy數(shù)組 - 重復調用時緩存常數(shù)值
PI = math.pi # 避免重復查找模塊屬性
- 使用
math.fsum替代內置sum進行高精度浮點求和
到此這篇關于Python math 模塊完全指南的文章就介紹到這了,更多相關Python math 模塊內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:
相關文章
詳解PANDAS 數(shù)據(jù)合并與重塑(join/merge篇)
這篇文章主要介紹了詳解PANDAS 數(shù)據(jù)合并與重塑(join/merge篇),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-07-07
PyQt5中QCommandLinkButton的詳細教程與應用實戰(zhàn)
在PyQt5中,QCommandLinkButton是一個特殊的按鈕控件,它最初在Windows Vista中引入,并因其獨特的外觀和功能在GUI應用程序中得到了廣泛應用,本教程將結合實際案例,詳細介紹QCommandLinkButton在PyQt5中的用法,需要的朋友可以參考下2024-07-07
Python調用Windows API函數(shù)編寫錄音機和音樂播放器功能
這篇文章主要介紹了Python調用Windows API函數(shù)編寫錄音機和音樂播放器功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2020-01-01
Python中利用json庫進行JSON數(shù)據(jù)處理詳解
JSON是一種輕量級的數(shù)據(jù)交換格式,易于人閱讀和編寫,同時也易于機器解析和生成,下面就跟隨小編一起來了解下如何使用Python實現(xiàn)JSON數(shù)據(jù)處理吧2025-02-02
Diango + uwsgi + nginx項目部署的全過程(可外網(wǎng)訪問)
這篇文章主要給大家介紹了關于Diango + uwsgi + nginx項目部署的全過程(可外網(wǎng)訪問),文中通過示例代碼將部署的過程介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。2018-04-04
Python 使用PIL.Image制作運動小人的動態(tài)圖思路詳解
這篇文章主要介紹了Python 使用PIL.Image制作一個運動小人的動態(tài)圖,制作過程也很簡單,只需要把圖片拆分成12等分,每幀大?。?7x165;連續(xù)讀取和播放就會形成動態(tài)圖像,需要的朋友可以參考下2021-10-10

