日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

Python字典查找數(shù)據(jù)的5個(gè)基礎(chǔ)操作方法_python

作者:python老鳥 ? 更新時(shí)間: 2022-08-17 編程語言

前言

上一篇文章寫了關(guān)于字典操作方法的增刪改,這篇主要講解如何查找字典數(shù)據(jù)。查找數(shù)據(jù)寫法一共有兩種,一種能夠是key值查找,另外一種是按照函數(shù)的寫法進(jìn)行數(shù)據(jù)查找。

一、key值查找

如果當(dāng)前查找的key存在,則返回對應(yīng)的值,否則則報(bào)錯(cuò)。

代碼示例:

dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
# key存在則返回對應(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,返回可迭代對象(可跌迭代對象就是可以用for遍歷的對象)

快速體驗(yàn):

dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
print(dict1.keys())
# 結(jié)果 dict_keys(['name', 'age', 'sex'])
# 結(jié)果是可迭代對象,用for遍歷的對象

2.3 values()

語法:

字典序列.values()

作用:

查找字典中所有的value,返回可迭代對象(可跌迭代對象就是可以用for遍歷的對象)

快速體驗(yàn):

dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
print(dict1.values())
# 結(jié)果 dict_values(['Rose', 30, '女'])
# 結(jié)果是可迭代對象,用for遍歷的對象

2.4 items()

語法:

字典序列.get(key, 默認(rèn)值)

作用:

查找字典中所有的鍵值對,返回可迭代對象,里面的數(shù)據(jù)是元組,元組數(shù)據(jù)1是字典的key,元組數(shù)據(jù)2是字典key對應(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é)果是可迭代對象

附:字典的常用方法

"""
字典的定義、添加和修改
"""
dictA = {}  # 空字典,沒有任何的數(shù)據(jù)
dictA['name'] = 'lihua'  # 將一個(gè)鍵值對添加到字典中,name是key,lihua是value
print(dictA)  # 輸出完整的字典
dictB = {'name': 'xiaogang', 'age': 18, 'job': [student, cook]}  # 在創(chuàng)建字典時(shí)就添加鍵值對
print(len(dictB))  # 字典同樣可以通過len函數(shù)來獲取鍵值對的長度
print(dictB['name'])  # 因?yàn)樽值渲衚ey具有唯一性,所以可以通過查找key的方式來獲取對應(yīng)的value
dictB['name'] = 'xiaowang'  # 修改key所對應(yīng)的value
"""
字典中鍵、值、鍵值對的獲取
"""
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())  # 獲取字典中全部的鍵值對
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í)變量分別接收鍵值對的key和value
"""
字典的更新、修改
"""
dictB = {'name': 'lh', 'age': '18', 'job': 'student'}
dictB.update({'name': 'lki'})  # 利用update函數(shù)可以進(jìn)行對鍵值對的修改
dictB.update({'height': '159'})  # update函數(shù)還可以增加鍵值對,有更新字典的特征
"""
鍵值對的刪除
"""
dictB = {'name': 'lh', 'age': '18', 'job': 'student'}
del dictB['name']  # 通過指定key可以刪除鍵值對
dictB.pop('age')  # 通過指定key進(jìn)行刪除
dictB.clear()  # 清空字典
del dictB  # 刪除字典

總結(jié)

原文鏈接:https://blog.csdn.net/weixin_48728769/article/details/124246816

欄目分類
最近更新