在 Python 的字典中,鍵 (key) 必須是不可變的資料型態。這意味著,一旦將一個鍵值對加入字典,這個鍵就不能再被修改。
-哈希表: 字典底層是使用哈希表來實現的。哈希表通過計算鍵的哈希值來快速查找值。如果鍵是可變的,那麼它的哈希值也可能會改變,導致無法正確地定位到值。
-唯一性: 鍵在字典中必須是唯一的,如果鍵是可變的,那麼就無法保證鍵的唯一性。
數字: 整數、浮點數
字串: 字符串
元組: 元組中的元素也必須是不可變的
布林值: True 或 False
setdefault() 方法用於在字典中添加鍵值對。如果指定的鍵已經存在,則返回該鍵對應的值;如果不存在,則添加該鍵值對,並返回指定的默认值。
語法:
dict.setdefault(key, default=None)
-key: 要查找或添加的鍵。
-default: 如果鍵不存在,則添加的默认值。
my_dict = {'a': 1, 'b': 2}
value = my_dict.setdefault('c', 3)
print(my_dict) # 输出:{'a': 1, 'b': 2, 'c': 3}
print(value) # 输出:3
value = my_dict.setdefault('a', 4)
print(my_dict) # 输出:{'a': 1, 'b': 2, 'c': 3}
print(value) # 输出:1
get() 方法用於在字典中查找指定鍵的值。如果鍵存在,則返回對應的值;如果不存在,則返回指定的默认值。
語法:dict.get(key, default=None)
setdefault(): 如果鍵不存在,則會添加一個新的鍵值對。
get(): 如果鍵不存在,則只返回默认值,不會修改字典。
setdefault():
初始化字典時,為不存在的鍵設置默认值。
統計詞頻時,遇到新詞時自動增加計數。
get():
安全地獲取字典中的值,避免 KeyError 異常。
根據鍵的存在與否進行不同的操作。
-字典的鍵必須是不可變的,以保證哈希表的正確性。
-setdefault() 方法用於添加鍵值對,如果鍵不存在則返回默认值。
-get() 方法用於獲取鍵對應的值,如果鍵不存在則返回默认值。
-選擇使用 setdefault() 或 get() 取決於具體的應用場景。