更新時(shí)間:2021年12月21日15時(shí)47分 來(lái)源:傳智教育 瀏覽次數(shù):
clear() 用于清空字典中所有的 key-value 對(duì),對(duì)一個(gè)字典執(zhí)行 clear() 方法之后,該字典就會(huì)變成一個(gè)空字典。
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} print(scores_dict) # 輸出 {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} scores_dict.clear() # 刪除字典所有內(nèi)容 print(scores_dict) # 輸出{}
get() 方法其實(shí)就是根據(jù) key 來(lái)獲取 value,它相當(dāng)于方括號(hào)語(yǔ)法的增強(qiáng)版,當(dāng)使用方括號(hào)語(yǔ)法訪問(wèn)并不存在的 key 時(shí),字典會(huì)引發(fā) KeyError 錯(cuò)誤;但如果使用 get() 方法訪問(wèn)不存在的 key,該方法會(huì)簡(jiǎn)單地返回 None,不會(huì)導(dǎo)致錯(cuò)誤。例如如下代碼:
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} print(scores_dict.get('歷史')) # 輸出 None print(scores_dict['歷史']) # 報(bào)錯(cuò) KeyError: '歷史'
update() 方法可使用一個(gè)字典所包含的 key-value 對(duì)來(lái)更新己有的字典。在執(zhí)行 update() 方法時(shí),如果被更新的字典中己包含對(duì)應(yīng)的 key-value 對(duì),那么原 value 會(huì)被覆蓋;如果被更新的字典中不包含對(duì)應(yīng)的 key-value 對(duì),則該 key-value 對(duì)被添加進(jìn)去。例如如下代碼:
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} scores_dict.update({'語(yǔ)文': 120, '數(shù)學(xué)': 110}) print(scores_dict) # 輸出{'語(yǔ)文': 120, '數(shù)學(xué)': 110, '英語(yǔ)': 120}
以列表返回可遍歷的(鍵, 值) 元組數(shù)組
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} print(scores_dict.items()) # 輸出 dict_items([('語(yǔ)文', 105), ('數(shù)學(xué)', 140), ('英語(yǔ)', 120)])
以列表返回一個(gè)字典所有的鍵
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} print(scores_dict.keys()) # 輸出 dict_keys(['語(yǔ)文', '數(shù)學(xué)', '英語(yǔ)'])
以列表返回字典中的所有值
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} print(scores_dict.values()) # 輸出 dict_values([105, 140, 120])
pop() 方法用于獲取指定 key 對(duì)應(yīng)的 value,并刪除這個(gè) key-value 對(duì)。如下方法示范了 pop() 方法的用法:
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} scores_dict.pop('英語(yǔ)') # 刪除'英語(yǔ)'的鍵和值 print(scores_dict) # 輸出{'語(yǔ)文': 105, '數(shù)學(xué)': 140}
popitem() 方法用于彈出字典中最后一個(gè)key-value對(duì)
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} print(scores_dict.popitem()) # 輸出('英語(yǔ)', 120)
setdefault() 方法也用于根據(jù) key 來(lái)獲取對(duì)應(yīng) value 的值。但該方法有一個(gè)額外的功能,即當(dāng)程序要獲取的 key 在字典中不存在時(shí),該方法會(huì)先為這個(gè)不存在的 key 設(shè)置一個(gè)默認(rèn)的 value,然后再返回該 key 對(duì)應(yīng)的值。
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} # 設(shè)置'語(yǔ)文'默認(rèn)值為100 scores_dict.setdefault('語(yǔ)文', 100) print(scores_dict) # 輸出{'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} # 設(shè)置'歷史'默認(rèn)值為140 scores_dict.setdefault('歷史', 140) print(scores_dict) # 輸出{'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120, '歷史': 140}
fromkeys() 方法使用給定的多個(gè)key創(chuàng)建字典,這些key對(duì)應(yīng)的value默認(rèn)都是None;也可以額外傳入一個(gè)參數(shù)作為默認(rèn)的value。該方法一般不會(huì)使用字典對(duì)象調(diào)用(沒(méi)什么意義),通常會(huì)使用 dict 類(lèi)直接調(diào)用。例如如下代碼:
scores_dict = dict.fromkeys(['語(yǔ)文', '數(shù)學(xué)']) print(scores_dict) # 輸出{'語(yǔ)文': None, '數(shù)學(xué)': None} scores_dict = dict.fromkeys(('語(yǔ)文', '數(shù)學(xué)')) print(scores_dict) # 輸出{'語(yǔ)文': None, '數(shù)學(xué)': None} # 使用元組創(chuàng)建包含2個(gè)key的字典,指定默認(rèn)的value scores_dict = dict.fromkeys(('語(yǔ)文', '數(shù)學(xué)'), 100) print(scores_dict) # 輸出{'語(yǔ)文': 100, '數(shù)學(xué)': 100}
計(jì)算字典元素個(gè)數(shù),即鍵的總數(shù)。
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} print(len(scores_dict)) # 輸出 3
輸出字典可打印的字符串
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} print(str(scores_dict)) # 輸出{'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120}
返回輸入的變量類(lèi)型,如果變量是字典就返回字典類(lèi)型。
scores_dict = {'語(yǔ)文': 105, '數(shù)學(xué)': 140, '英語(yǔ)': 120} print(type(scores_dict)) # 輸出<class 'dict'>
加QQ:435946716獲取上面視頻的全套資料【視頻+筆記+源碼】
猜你喜歡:
python字典如何使用?有哪些應(yīng)用場(chǎng)景
Python中的字典是什么?怎么通過(guò)字典查詢信息?
北京校區(qū)