Python - 字典--增刪改查/內建方法大全
字典
是另一種可變容器模型,且可儲存任意型別物件。
- 字典的每個鍵值 key=>value 對用冒號 : 分割,每個鍵值對之間用逗號 , 分割,整個字典包括在花括號 {} 中;
- 鍵一般是唯一的,如果重複最後的一個鍵值對會替換前面的,值不需要唯一;
- 值可以取任何資料型別,但鍵必須是不可變的,如字串,數字或元組;
增
字典的增加,是按照:字典名[key] = value
刪
字典的刪除,可以使用 del
:
del 字典[key]
: 刪除指定鍵的資料;
del 字典名
:刪除整個字典;所以再次列印這個字典,就會報錯說不存在;
改
改的方法和增是一樣的:字典名[key] = value
鍵存在的話,就是修改值的資料
鍵不存在,就是新增
查
查詢的方法:字典名[key], key不存在會報出KeyError
內建方法:
定義一個字典: dict = {‘Name’: ‘Zara’, ‘Age’: 7, ‘Class’: ‘First’}
- clear():
dict.clear()
刪除字典中的所有資料
- pop():
pop(key[,default])
刪除指定的鍵(鍵值都會被刪除,鍵不存在會報錯)
3.copy():dict.copy()
返回一個字典的淺複製
這裡說一下,copy()和直接賦值的區別:
-
賦值:只是針對一個引用,讓多個變數名進行指向,所以在改變dict的時候,也會改變dict1;
-
copy():copy就是一種淺拷貝,也就是外部的引用進行變化了,但是內部的引用dict和dict3都還是指向一個的;
知識拓展:深拷貝和淺拷貝詳解
-
get():
dict.get(key, default=None)
返回指定鍵的值,如果值不在字典中返回default值
-
items():
dict.items()
以列表返回可遍歷的(鍵, 值) 元組陣列
-
keys():
dict.keys()
-
values():
dict.values()
以列表返回字典中的所有值
-
update(dict2):
dict.update(dict2)
把字典dict2的鍵/值對更新到dict裡
-
popitem():
popitem()
隨機返回並刪除字典中的一對鍵和值。
-
setdefault():
dict.setdefault(key, default=None)
和get()類似, 但如果鍵不存在於字典中,將會新增鍵並將值設為default
-
fromkerys():
dict.fromkeys(seq[, val])
建立一個新字典,以序列 seq 中元素做字典的鍵,val 為字典所有鍵對應的初始值