1. Python 的 if 語句基礎
在 Python 中,條件判斷使用if
語句。Python 使用縮排(空格或 Tab)來定義程式區塊,當條件為True
時,執行該區塊內的程式碼。與其他程式語言不同,Python 非常重視縮排,若縮排不正確將會導致錯誤。
1.1 基本語法與使用範例
if
語句的基本語法如下:
if 條件:
# 當條件為 True 時執行的程式碼
範例:
a = 5
if a == 5:
print("a 是 5") # 輸出: a 是 5
這段程式碼會在a
等於 5 時,輸出「a 是 5」。Python 提供多種比較運算子來判斷條件是否為True
或False
。
2. 什麼是 in 運算子?
in
運算子用於檢查某個元素是否存在於序列(字串、列表、元組等)中。結合if
語句,可以根據元素是否存在來執行特定處理。
2.1 基本用法
以下是使用in
運算子的語法:
if 元素 in 序列:
# 當元素存在於序列中時執行的程式碼
範例:
fruits = ["apple", "banana", "cherry"]
if "apple" in fruits:
print("蘋果在列表中") # 輸出: 蘋果在列表中
這段程式碼會在列表fruits
中包含”apple”時輸出訊息。
3. if 語句與 in 運算子的實用範例
if
語句與in
運算子的組合在許多情境中都非常有用。以下介紹幾個實用的範例。
3.1 檢查字串中是否包含特定部分
message = "Hello, world!"
if "world" in message:
print("訊息中包含 'world'") # 輸出: 訊息中包含 'world'
這個範例會檢查字串message
中是否包含”world”,若包含則輸出訊息。
3.2 檢查字典中是否存在特定鍵
也可以檢查字典中是否存在特定的鍵。
person = {"name": "Alice", "age": 30}
if "name" in person:
print("字典中包含名稱鍵") # 輸出: 字典中包含名稱鍵
這段程式碼會檢查person
字典中是否包含”name”鍵,若存在則輸出訊息。
4. 與邏輯運算子的結合
當需要檢查多個條件時,可以使用邏輯運算子and
、or
和not
。這樣可以建立更複雜的條件判斷。
4.1 in
與and
、or
的組合
以下範例展示如何將in
與其他條件組合使用:
fruits = ["apple", "banana", "cherry"]
if "apple" in fruits and "banana" in fruits:
print("蘋果和香蕉都在列表中") # 輸出: 蘋果和香蕉都在列表中
此範例會檢查列表fruits
中是否同時包含”apple”和”banana”,若條件成立則輸出訊息。
4.2 使用not in
若需要檢查某元素是否不在序列中,可以使用not in
。
if "grape" not in fruits:
print("葡萄不在列表中") # 輸出: 葡萄不在列表中
這段程式碼會檢查列表fruits
中是否不包含”grape”,若條件成立則輸出訊息。
5. Python 中 if 語句與 in 運算子的進階用法
進階用法包括將in
運算子與列表內包或迴圈結合使用。
5.1 在列表內包中使用
以下範例展示如何使用in
在列表內包中創建新列表:
numbers = [1, 2, 3, 4, 5]
even_numbers = [num for num in numbers if num % 2 == 0]
print(even_numbers) # 輸出: [2, 4]
此範例從numbers
列表中篩選出偶數,並創建新列表even_numbers
。
5.2 在迴圈中使用
也可以在迴圈中使用in
來處理序列中的每個元素。
words = ["apple", "banana", "cherry"]
for word in words:
if "a" in word:
print(f"{word} 包含 'a'") # 輸出: apple 包含 'a'
這段程式碼會檢查列表words
中的每個元素是否包含字母”a”,若包含則輸出訊息。
6. 常見錯誤與對策
以下介紹使用if
語句與in
運算子時常見的錯誤及避免方法。
6.1 縮排不一致
Python 使用縮排來決定區塊結構,若縮排不正確,會出現IndentationError
。
if True:
print("縮排錯誤") # 錯誤
正確的縮排範例如下:
if True:
print("縮排正確") # 正常輸出
6.2 in
的錯誤使用
in
只能用於序列型資料(如字串、列表或元組)。在字典中,它只能檢查鍵,而不能直接檢查值。
person = {"name": "Alice", "age": 30}
if "Alice" in person: # 錯誤:檢查的是鍵
print("錯誤")
若要檢查值,應使用以下語法:
if "Alice" in person.values():
print("值存在於字典中") # 輸出: 值存在於字典中
7. 總結
if
語句與in
運算子是 Python 中非常強大的工具。希望本文能幫助您從基礎到進階掌握這些功能,並在實際程式設計中加以應用。