Python - 比較運算符:初學者的友好指南
你好,有志於成為 Python 程式設計師的朋友!很高興能夠在這次令人興奮的比較運算符世界中成為你的嚮導。作為一個教了多年 Python 的人,我敢保證,掌握這些概念將在你的程式設計冒險中成為一個遊戲變數。那麼,我們一起深入探討吧!
什麼是比較運算符?
想像你是一場籃球比賽的裁判。你的工作是比較分數、球員身高,甚至比賽剩下的時間。在 Python 中,比較運算符扮演著類似的角色 - 幫助我們比較值,並根據這些比較做出決策。
Python 中不同的比較運算符
讓我們從一個方便的表格開始,這裡列出了我們將要探討的所有比較運算符:
運算符 | 名稱 | 示例 |
---|---|---|
== | 等於 | x == y |
!= | 不等於 | x != y |
> | 大於 | x > y |
< | 小於 | x < y |
>= | 大於或等於 | x >= y |
<= | 小於或等於 | x <= y |
現在,讓我們一一解析這些運算符,並通過一些有趣的示例來了解!
等於 (==) 運算符
x = 5
y = 5
print(x == y) # 輸出:True
name1 = "Alice"
name2 = "Bob"
print(name1 == name2) # 輸出:False
在這裡,我們在問 Python,“x 和 y 是一樣的嗎?”在第一個例子中,兩者都是 5,所以它是 True。對於名字,Alice 和 Bob 是不同的,所以它是 False。
不等於 (!=) 運算符
age1 = 25
age2 = 30
print(age1 != age2) # 輸出:True
favorite_color = "blue"
print(favorite_color != "green") # 輸出:True
這個運算符就像在問,“這個和那個不一樣嗎?”如果值不同,則為 True;如果它們相同,則為 False。
大於 (>) 和小於 (<) 運算符
temperature = 28
print(temperature > 25) # 輸出:True
print(temperature < 30) # 輸出:True
alphabet = "abc"
print("d" > alphabet) # 輸出:True
這些運算符就像在數學中一樣工作。但注意,我們甚至可以比較字符串!Python 根據它們的字母順序進行比較。
大於或等於 (>=) 和小於或等於 (<=) 運算符
score = 85
print(score >= 80) # 輸出:True
print(score <= 90) # 輸出:True
print("apple" <= "banana") # 輸出:True
這些與 > 和 < 相似,但它們也在值相等時返回 True。
浮點數的比較
比較浮點數可能會因精準度問題而棘手。讓我們看一個例子:
x = 0.1 + 0.2
y = 0.3
print(x == y) # 輸出:False
等等,什麼?0.1 + 0.2 應該等於 0.3 呀?歡迎來到迷人的浮點數算術世界!由於電腦表示小數的方式,有時我們會得到微小的誤差。為了實際比較,我們可以使用 round()
函數或一個小的容差:
print(round(x, 1) == round(y, 1)) # 輸出:True
tolerance = 0.0001
print(abs(x - y) < tolerance) # 輸出:True
复數的比較
Python 還允許我們使用復數!然而,直接使用 < 或 > 進行比較在數學上沒有多大意義,所以 Python 不允許這樣做:
a = 1 + 2j
b = 3 + 4j
print(a == b) # 輸出:False
# print(a < b) # 這會引發錯誤!
但我們可以比較它們的模:
print(abs(a) < abs(b)) # 輸出:True
布爾值的比較
布爾值很簡單 - True 被認為大於 False:
print(True > False) # 輸出:True
print(True == 1) # 輸出:True
print(False == 0) # 輸出:True
這最後一點可能會讓你感到驚訝 - 在 Python 中,True 實際上等價於 1,False 等價於 0!
序列類型的比較
當比較如列表、元組或字符串之類的序列時,Python 會逐個元素地比較它們:
print([1, 2, 3] < [1, 2, 4]) # 輸出:True
print("hello" < "hello world") # 輸出:True
print((1, 2, 3) == (1, 2, 3)) # 輸出:True
Python 從開頭開始,並比較每個元素,直到找到差異或達到結尾。
字典對象的比較
字典有點特別。你可以檢查它們是否相等,但不能使用 <, >, <= 或 >=:
dict1 = {"a": 1, "b": 2}
dict2 = {"b": 2, "a": 1}
print(dict1 == dict2) # 輸出:True
# print(dict1 < dict2) # 這會引發錯誤!
有趣的是,在字典中進行相等性比較時,鍵的順序並不重要。
就這樣!你剛剛完成了 Python 比較運算符的旋風之旅。記住,熟練掌握需要練習,所以不要猶豫在
Credits: Image by storyset