Python字典查找數(shù)據(jù)的5個(gè)基礎(chǔ)操作方法
前言
上一篇文章寫了關(guān)于字典操作方法的增刪改,這篇主要講解如何查找字典數(shù)據(jù)。查找數(shù)據(jù)寫法一共有兩種,一種能夠是key值查找,另外一種是按照函數(shù)的寫法進(jìn)行數(shù)據(jù)查找。
一、key值查找
如果當(dāng)前查找的key存在,則返回對(duì)應(yīng)的值,否則則報(bào)錯(cuò)。
代碼示例:
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'} # key存在則返回對(duì)應(yīng)值 print(dict1['name']) # Rose # key不存在則報(bào)錯(cuò) print(dict1['id']) # 報(bào)錯(cuò)
二、函數(shù)查找
2.1 get()
語法:
字典序列.get(key, 默認(rèn)值)
注意:
如果當(dāng)前查找的key不存在則返回第二個(gè)參數(shù)(默認(rèn)值),如果省略第二個(gè)參數(shù),則返回None。
快速體驗(yàn):
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'} # key存在 print(dict1.get('name')) # Rose print(dict1.get('name', 'python')) # Rose # key不存在,第二個(gè)參數(shù)存在,返回第二個(gè)參數(shù) print(dict1.get('id', 1010)) # 1010 # key不存在,第二個(gè)參數(shù)不存在,返回None print(dict1.get('id')) # None
2.2 keys()
語法:
字典序列.keys()
作用:
查找字典中所有的key,返回可迭代對(duì)象(可跌迭代對(duì)象就是可以用for遍歷的對(duì)象)
快速體驗(yàn):
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'} print(dict1.keys()) # 結(jié)果 dict_keys(['name', 'age', 'sex']) # 結(jié)果是可迭代對(duì)象,用for遍歷的對(duì)象
2.3 values()
語法:
字典序列.values()
作用:
查找字典中所有的value,返回可迭代對(duì)象(可跌迭代對(duì)象就是可以用for遍歷的對(duì)象)
快速體驗(yàn):
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'} print(dict1.values()) # 結(jié)果 dict_values(['Rose', 30, '女']) # 結(jié)果是可迭代對(duì)象,用for遍歷的對(duì)象
2.4 items()
語法:
字典序列.get(key, 默認(rèn)值)
作用:
查找字典中所有的鍵值對(duì),返回可迭代對(duì)象,里面的數(shù)據(jù)是元組,元組數(shù)據(jù)1是字典的key,元組數(shù)據(jù)2是字典key對(duì)應(yīng)的值。
快速體驗(yàn):
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'} print(dict1.items()) # 結(jié)果 dict_items([('name', 'Rose'), ('age', 30), ('sex', '女')]) dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'} print(dict1.items()) # 結(jié)果 dict_items([('name', 'Rose'), ('age', 30), ('sex', '女')]) # 結(jié)果是可迭代對(duì)象
附:字典的常用方法
""" 字典的定義、添加和修改 """ dictA = {} # 空字典,沒有任何的數(shù)據(jù) dictA['name'] = 'lihua' # 將一個(gè)鍵值對(duì)添加到字典中,name是key,lihua是value print(dictA) # 輸出完整的字典 dictB = {'name': 'xiaogang', 'age': 18, 'job': [student, cook]} # 在創(chuàng)建字典時(shí)就添加鍵值對(duì) print(len(dictB)) # 字典同樣可以通過len函數(shù)來獲取鍵值對(duì)的長度 print(dictB['name']) # 因?yàn)樽值渲衚ey具有唯一性,所以可以通過查找key的方式來獲取對(duì)應(yīng)的value dictB['name'] = 'xiaowang' # 修改key所對(duì)應(yīng)的value
""" 字典中鍵、值、鍵值對(duì)的獲取 """ dictB = {'name': 'lh', 'age': '18', 'job': 'student'} print(dictB.keys()) # 獲取字典中全部的鍵 print(type(dictB.keys)) # 數(shù)據(jù)類型為dict_keys print(dictB.values()) # 獲取字典中全部的值 print(type(dictB.values())) # 數(shù)據(jù)類型為dict_values print(dictB.items()) # 獲取字典中全部的鍵值對(duì) print(type(dictB.items())) # 數(shù)據(jù)類型為dict_values
""" 字典的遍歷操作 """ dictB = {'name': 'lh', 'age': '18', 'job': 'student'} for item in dictB.items(): print(item) # 字典是可以遍歷的 pass for key, value in dictB.items(): print(key + '==' + value) # 可以用兩個(gè)臨時(shí)變量分別接收鍵值對(duì)的key和value
""" 字典的更新、修改 """ dictB = {'name': 'lh', 'age': '18', 'job': 'student'} dictB.update({'name': 'lki'}) # 利用update函數(shù)可以進(jìn)行對(duì)鍵值對(duì)的修改 dictB.update({'height': '159'}) # update函數(shù)還可以增加鍵值對(duì),有更新字典的特征
""" 鍵值對(duì)的刪除 """ dictB = {'name': 'lh', 'age': '18', 'job': 'student'} del dictB['name'] # 通過指定key可以刪除鍵值對(duì) dictB.pop('age') # 通過指定key進(jìn)行刪除 dictB.clear() # 清空字典 del dictB # 刪除字典
總結(jié)
到此這篇關(guān)于Python字典查找數(shù)據(jù)的5個(gè)基礎(chǔ)操作方法的文章就介紹到這了,更多相關(guān)Python字典查找數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python使用BeautifulSoup分頁網(wǎng)頁中超鏈接的方法
這篇文章主要介紹了python使用BeautifulSoup分頁網(wǎng)頁中超鏈接的方法,涉及Python使用BeautifulSoup模塊操作網(wǎng)頁鏈接的技巧,需要的朋友可以參考下2015-04-04python實(shí)現(xiàn)圖像自動(dòng)Gamma校正方式
這篇文章主要介紹了python實(shí)現(xiàn)圖像自動(dòng)Gamma校正方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-10-10解析Anaconda創(chuàng)建python虛擬環(huán)境的問題
這篇文章主要介紹了Anaconda創(chuàng)建python虛擬環(huán)境,包括虛擬環(huán)境管理、虛擬環(huán)境中python包管理,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03磁盤垃圾文件清理器python代碼實(shí)現(xiàn)
幾行Python代碼打造自己的磁盤垃圾文件清理器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03Python+LyScript實(shí)現(xiàn)自定義反匯編
LyScript?插件默認(rèn)提供了一個(gè)get_disasm_code()方法可以直接獲取到指定行數(shù)的反匯編代碼。本文將利用LyScript實(shí)現(xiàn)自定義反匯編,感興趣的可以了解一下2022-07-07Python統(tǒng)計(jì)可散列的對(duì)象之容器Counter詳解
Counter是一個(gè)容器,可以跟蹤等效值增加的次數(shù).這個(gè)類可以用來實(shí)現(xiàn)其他語言中常用包或多集合數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的算法.本篇文章非常詳細(xì)的介紹了容器Counter的使用方式,需要的朋友可以參考下2021-05-05