Python 3.1 快速導覽 - 算術運算

Python 的算術運算子 (arithmetic operator) 包含加、減、乘、除、取餘數,皆需兩個運算元 (operand) 構成運算式 (expression) ,如下列表

運算子功能範例
+a + b
-a - b
*a * b
**指數a ** b
/a / b
//整數除法a // b
%取餘數a % b


以下程式示範由整數型態 (integral type) 進行算術運算 (arithmetic operation)
a = 22
b = 33

print(a + b)
print(a - b)
print(a * b)
print(a ** b)
print(a / b)
print(a // b)
print(a % b)

# 《程式語言教學誌》的範例程式
# http://pydoing.blogspot.com/
# 檔名:expr03.py
# 功能:示範 Python 程式 
# 作者:張凱慶
# 時間:西元 2010 年 12 月 */


執行結果如下



注意第 9 行
print(a // b)


這是整數除法 (integer division) ,所以得到的結果也會是整數。


以下程式示範由浮點數型態 (floating-point type) 進行算術運算
a = 22.2
b = 33.3

print(a + b)
print(a - b)
print(a * b)
print(a ** b)
print(a / b)
print(a // b)
print(a % b)

# 《程式語言教學誌》的範例程式
# http://pydoing.blogspot.com/
# 檔名:expr04.py
# 功能:示範 Python 程式 
# 作者:張凱慶
# 時間:西元 2010 年 12 月 */


執行結果如下



Python 的物件導向 (object-oriended) 的程式設計模式可以使運算子多載 (operator overloading) 。這是說相同的運算子在不同資料型態 (data type) 可以設定成不同的用途,例如,加法運算子 (additive operator) 在字串 (string) 用於字串的連結 (concatenation) ,乘法運算子 (multiplicative operator) 在字串可用於重複,如下範例
a = "22"
b = "33"

print(a + b + a * 4 + b * 4)
print((a + b) * 5)
print(a * 5 + b * 5)
print(a * 10)

# 《程式語言教學誌》的範例程式
# http://pydoing.blogspot.com/
# 檔名:expr05.py
# 功能:示範 Python 程式 
# 作者:張凱慶
# 時間:西元 2010 年 12 月 */


執行結果如下


中英文術語對照
算術運算子arithmetic operator
運算元operand
運算式expression
整數型態integral type
算術運算arithmetic operation
整數除法integer division
浮點數型態floating-point type
物件導向object-oriended
運算子多載operator overloading
加法運算子additive operator
資料型態data type
字串string
連結concatenation
乘法運算子multiplicative operator






沒有留言: