CodeGym /課程 /Python SELF TW /檢查字典中元素的存在

檢查字典中元素的存在

Python SELF TW
等級 11 , 課堂 4
開放

4.1 檢查字典中的鍵是否存在

有好幾種方式可以檢查一個鍵是不是在字典中,每種方法都有自己的特點和應用場景。

運算子 in

最常用且有效的方式來檢查鍵是否在字典中就是使用 in 運算子。這個方法會回傳 True 如果鍵存在於字典中,否則回傳 False


person = {"name": "Alice", "age": 25, "city": "New York"}

# 檢查字典中鍵 "name" 和 "country" 的存在
print("name" in person)  # 輸出: True
print("country" in person)  # 輸出: False

# 在條件運算中使用的例子
if "age" in person:
    print("鍵 'age' 存在於字典中。")
else:
    print("鍵 'age' 不存在於字典中。")

方法 get()

方法 get() 可以安全地根據鍵獲取值,如果鍵不存在則回傳 None 或指定的預設值。你可以使用這個方法來檢查鍵的存在,看看它是否回傳 None


person = {"name": "Alice", "age": 25, "city": "New York"}

# 根據鍵 "age" 獲取值
value = person.get("age")

# 檢查鍵 "age" 是否存在於字典中
if value is not None:
    print("鍵 'age' 存在於字典中。")
else:
    print("鍵 'age' 不存在於字典中。")

方法 keys()

方法 keys() 返回所有字典鍵的集合。你可以使用 in 運算子來遍歷這個集合,檢查鍵的存在。


person = {"name": "Alice", "age": 25, "city": "New York"}

# 檢查鍵 "name" 是否在字典的鍵集合中
if "name" in person.keys():
    print("鍵 'name' 存在於字典中。")
else:
    print("鍵 'name' 不存在於字典中。")

4.2 檢查字典中的元素是否存在

如果我們想檢查字典是否包含某個與鍵相關聯的特定值,有幾種簡單的方法:

使用方法 values()

方法 values() 返回字典中所有值的集合。你可以用 in 運算子來檢查這個集合中是否有指定的值。


person = {"name": "Alice", "age": 25, "city": "New York"}

# 檢查值 25 是否存在於字典中
if 25 in person.values():
    print("值 25 存在於字典中。")
else:
    print("值 25 不存在於字典中。")

使用函數 set()

你可以將值的集合轉換為集合然後使用 in 運算子來檢查值的存在。


person = {"name": "Alice", "age": 25, "city": "New York"}

# 將值的集合轉換為集合
values_set = set(person.values())

# 檢查值 "New York" 是否在集合中
if "New York" in values_set:
    print("值 'New York' 存在於字典中。")
else:
    print("值 'New York' 不存在於字典中。")

使用生成器

你可以使用生成器來檢查字典中是否存在值。這可以讓代碼更簡潔易讀。


person = {"name": "Alice", "age": 25, "city": "New York"}
value_to_find = 25

# 使用生成器檢查值的存在
if any(value == value_to_find for value in person.values()):
    print(f"值 {value_to_find} 存在於字典中。")
else:
    print(f"值 {value_to_find} 不存在於字典中。")

values() 返回的物件可能不是唯一的,所以在查找多個元素時,首先將它們轉換為集合可能會更有用,然後在集合中工作。

留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION