網站首頁 編程語言 正文
前言
上一篇文章寫了關于字典操作方法的增刪改,這篇主要講解如何查找字典數據。查找數據寫法一共有兩種,一種能夠是key值查找,另外一種是按照函數的寫法進行數據查找。
一、key值查找
如果當前查找的key存在,則返回對應的值,否則則報錯。
代碼示例:
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
# key存在則返回對應值
print(dict1['name']) # Rose
# key不存在則報錯
print(dict1['id']) # 報錯
二、函數查找
2.1 get()
語法:
字典序列.get(key, 默認值)
注意:
如果當前查找的key不存在則返回第二個參數(默認值),如果省略第二個參數,則返回None。
快速體驗:
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
# key存在
print(dict1.get('name')) # Rose
print(dict1.get('name', 'python')) # Rose
# key不存在,第二個參數存在,返回第二個參數
print(dict1.get('id', 1010)) # 1010
# key不存在,第二個參數不存在,返回None
print(dict1.get('id')) # None
2.2 keys()
語法:
字典序列.keys()
作用:
查找字典中所有的key,返回可迭代對象(可跌迭代對象就是可以用for遍歷的對象)
快速體驗:
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
print(dict1.keys())
# 結果 dict_keys(['name', 'age', 'sex'])
# 結果是可迭代對象,用for遍歷的對象
2.3 values()
語法:
字典序列.values()
作用:
查找字典中所有的value,返回可迭代對象(可跌迭代對象就是可以用for遍歷的對象)
快速體驗:
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
print(dict1.values())
# 結果 dict_values(['Rose', 30, '女'])
# 結果是可迭代對象,用for遍歷的對象
2.4 items()
語法:
字典序列.get(key, 默認值)
作用:
查找字典中所有的鍵值對,返回可迭代對象,里面的數據是元組,元組數據1是字典的key,元組數據2是字典key對應的值。
快速體驗:
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
print(dict1.items())
# 結果 dict_items([('name', 'Rose'), ('age', 30), ('sex', '女')])
dict1 = {'name': 'Rose', 'age': 30, 'sex': '女'}
print(dict1.items())
# 結果 dict_items([('name', 'Rose'), ('age', 30), ('sex', '女')])
# 結果是可迭代對象
附:字典的常用方法
"""
字典的定義、添加和修改
"""
dictA = {} # 空字典,沒有任何的數據
dictA['name'] = 'lihua' # 將一個鍵值對添加到字典中,name是key,lihua是value
print(dictA) # 輸出完整的字典
dictB = {'name': 'xiaogang', 'age': 18, 'job': [student, cook]} # 在創建字典時就添加鍵值對
print(len(dictB)) # 字典同樣可以通過len函數來獲取鍵值對的長度
print(dictB['name']) # 因為字典中key具有唯一性,所以可以通過查找key的方式來獲取對應的value
dictB['name'] = 'xiaowang' # 修改key所對應的value
"""
字典中鍵、值、鍵值對的獲取
"""
dictB = {'name': 'lh', 'age': '18', 'job': 'student'}
print(dictB.keys()) # 獲取字典中全部的鍵
print(type(dictB.keys)) # 數據類型為dict_keys
print(dictB.values()) # 獲取字典中全部的值
print(type(dictB.values())) # 數據類型為dict_values
print(dictB.items()) # 獲取字典中全部的鍵值對
print(type(dictB.items())) # 數據類型為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) # 可以用兩個臨時變量分別接收鍵值對的key和value
"""
字典的更新、修改
"""
dictB = {'name': 'lh', 'age': '18', 'job': 'student'}
dictB.update({'name': 'lki'}) # 利用update函數可以進行對鍵值對的修改
dictB.update({'height': '159'}) # update函數還可以增加鍵值對,有更新字典的特征
"""
鍵值對的刪除
"""
dictB = {'name': 'lh', 'age': '18', 'job': 'student'}
del dictB['name'] # 通過指定key可以刪除鍵值對
dictB.pop('age') # 通過指定key進行刪除
dictB.clear() # 清空字典
del dictB # 刪除字典
總結
原文鏈接:https://blog.csdn.net/weixin_48728769/article/details/124246816
相關推薦
- 2022-10-15 C語言利用UDP實現群聊聊天室的示例代碼_C 語言
- 2022-04-09 Python調用win10toast框架實現定時調起系統通知_python
- 2021-12-12 Redis實現分布式鎖的實例講解_Redis
- 2022-03-12 Android實現流光和光影移動效果代碼_Android
- 2022-08-15 element的form表單中如何一行顯示多el-form-item標簽
- 2022-05-29 Android?超詳細深刨Activity?Result?API的使用_Android
- 2022-06-02 Go語言數據類型詳細介紹_Golang
- 2022-04-08 CentOS7上安裝Docker的詳細步驟_docker
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支