【Python自學】Python 數學運算子以及其相關函數

這篇整理 Python 中常見的數學運算子與數學相關函數。從最基本的加減乘除,到 math 模組中的開根號、無條件進位、圓周率與對數,都會用簡單範例說明。

📘 Python 的運算子,以及與數學相關的函數

Python 可以直接進行許多數學運算,像是加法、減法、乘法、除法、次方、取餘數等。

除了基本運算子之外,Python 也提供許多常用的內建函數,例如 abs()round()max()min()

如果需要更多數學功能,則可以使用 math 模組。

🧮 基本數學運算子

Python 的基本數學運算子很直觀,基本上跟我們平常學數學時使用的符號差不多。

運算子 用途 範例 結果
+ 加法 3 + 2 5
- 減法 5 - 1 4
* 乘法 4 * 2 8
/ 除法 7 / 2 3.5
// 整除 7 // 2 3
% 取餘數 7 % 2 1

除法 / 與整除 // 的差別

/ 是一般除法,結果通常會是小數。

print(7 / 2)
3.5

// 是整除,只取整數部分。

print(7 // 2)
3
可以簡單記:
/ 是正常除法;// 是只看整數結果。

取餘數 %

% 會取得除法後剩下的餘數。

print(7 % 2)
1

因為 7 ÷ 2 等於 31,所以 7 % 2 的結果是 1

🔢 次方與根號

Python 使用 ** 來表示次方。

次方:**

print(2 ** 3)
8

2 ** 3 的意思是 2 的 3 次方,也就是:

2 * 2 * 2 = 8

開根號:** 0.5

print(9 ** 0.5)
3.0

開平方根其實可以看成是 1 / 2 次方。

平方根:x ** 0.5 三次方根:x ** (1 / 3)
次方與根號本質上是相關的概念。開平方根可以理解成做 1/2 次方,開三次方根可以理解成做 1/3 次方。

🧰 Python 常用內建數學函數

以下這些函數不需要 import math,可以直接使用。

函數 用途 範例 結果
abs(x) 絕對值 abs(-5) 5
round(x) 四捨五入 round(3.14159, 2) 3.14
pow(a, b) 次方 pow(2, 4) 16
max() 最大值 max(1, 2, 3) 3
min() 最小值 min(1, 2, 3) 1

abs():絕對值

abs() 可以取得一個數字的絕對值。

print(abs(-5))
5

round():四捨五入

round() 可以用來四捨五入。

print(round(3.14159, 2))
3.14

round() 括號中的第一個參數,是要四捨五入的數值;第二個參數,則是決定要四捨五入到小數點後第幾位。

round(數字, 小數位數)

如果第二個參數沒有填,預設會四捨五入到整數。

print(round(3.6))
4

pow():次方

pow(a, b) 等同於 a ** b

print(pow(2, 4)) print(2 ** 4)
16 16

差別在於 ** 是運算子,而 pow() 是函數。兩種寫法都可以,條條大路通羅馬。

max():最大值

x = 1 y = 2 z = 3 print(max(x, y, z))
3

max() 會找出括號中最大的值。

min():最小值

x = 1 y = 2 z = 3 print(min(x, y, z))
1

min() 的用法跟 max() 類似,只是它會找出最小值。

📐 math 模組裡的函數

如果需要更多數學功能,可以使用 Python 內建的 math 模組。

使用前需要先匯入:

import math
函數 / 常數 用途 範例 結果
math.sqrt(x) 開平方根 math.sqrt(16) 4.0
math.floor(x) 無條件捨去 math.floor(3.9) 3
math.ceil(x) 無條件進位 math.ceil(3.01) 4
math.pi 圓周率 π math.pi 3.14159...
math.pow(a, b) 次方,回傳 float math.pow(2, 3) 8.0
math.log(x, base) 對數 math.log(8, 2) 3.0

math.sqrt():開根號

import math print(math.sqrt(16))
4.0

math.sqrt(16)16 ** 0.5 類似,都是用來開平方根。

小提醒:如果寫成 16 ** 1 / 2,Python 會先算 16 ** 1,再除以 2,結果會是 8.0
若要表示開平方根,建議寫成 16 ** 0.516 ** (1 / 2)

math.floor():無條件捨去

import math print(math.floor(3.9))
3

math.floor() 會往較小的整數方向取值。

math.ceil():無條件進位

import math print(math.ceil(3.01))
4

math.ceil() 會往較大的整數方向取值。

math.pi:圓周率

import math print(math.pi)
3.141592653589793

math.pi 可以取得圓周率 π 的近似值。

math.pow():次方

import math print(math.pow(2, 3))
8.0

math.pow() 也可以計算次方,但它的結果會回傳 float

如果只是單純做次方運算,通常直接使用 ** 就很方便。
例如 2 ** 3

math.log():對數

import math print(math.log(8, 2))
3.0

math.log(8, 2) 的意思是以 2 為底,計算 8 的對數。

換句話說,就是在問:

2 的幾次方等於 8?

答案是 3,所以結果是 3.0

🧪 簡易的數學計算寫法:計算圓面積

接下來用一個簡單案例,練習 math.pi、輸入資料、型別轉換與次方運算。

圓面積公式是:

圓面積 = π * 半徑 ** 2

完整程式碼

import math # 計算圓的面積 radius = float(input("Enter radius: ")) area = math.pi * radius ** 2 print("The area of the circle is:", area)

程式執行範例

如果輸入半徑為 3

Enter radius: 3 The area of the circle is: 28.274333882308138

結果是 28.274333882308138

它不會算到你電腦當機,只是因為 math.pi 本身有很多小數位,所以結果看起來比較長。

使用 round() 讓結果更乾淨

如果想讓輸出結果簡潔一點,可以使用 round()

import math radius = float(input("Enter radius: ")) area = math.pi * radius ** 2 area = round(area, 2) print("The area of the circle is:", area)

執行結果

Enter radius: 3 The area of the circle is: 28.27

這樣就會把圓面積四捨五入到小數點後 2 位。

📋 運算子與數學函數速查表

最後用表格快速整理本文提到的重點。

分類 工具 用途
基本運算子 + - * / 加、減、乘、除。
整除 // 取得整除結果。
取餘數 % 取得除法餘數。
次方 ** 計算次方,也可用於根號。
內建函數 abs() 取得絕對值。
內建函數 round() 四捨五入。
內建函數 pow() 次方運算。
內建函數 max() / min() 找最大值與最小值。
math 模組 math.sqrt() 開平方根。
math 模組 math.floor() / math.ceil() 無條件捨去與無條件進位。
math 模組 math.pi 取得圓周率 π。
math 模組 math.log() 計算對數。

✅ 小結

Python 的數學運算很直覺,基本運算子可以處理大部分日常計算,而內建函數與 math 模組則提供更多進階數學工具。

  • 基本運算子:+ - * / // %
  • 次方:使用 **
  • 開根號:可以用 ** 0.5math.sqrt()
  • 內建函數:abs()round()pow()max()min()
  • math 模組:需要先 import math,可以使用更多數學函數。
  • 圓面積計算:可用 math.pi * radius ** 2
基本運算子 → 處理日常加減乘除 內建函數 → 快速完成常見數學操作 math 模組 → 使用更多進階數學功能
最後用一句話記住:
Python 的數學工具分成三層:運算子、內建函數、math 模組。

留言

這個網誌中的熱門文章

麻將新手必看!不知道聽什麼牌怎麼辦?超多種實戰聽牌範例,教你怎麼判斷胡牌機會

麻將教學懶人包|從規則到牌理的完整觀念整理(附實戰心得)

【新訓入伍】義務役新兵必看!入伍報到必備清單整理|2026年更新