網(wǎng)站首頁 編程語言 正文
dict字典
字典定義與使用
字典的定義:
- 字典是無序的鍵值對集合
- 字典用大括號{}包圍
- 每個鍵/值對之間用一個逗號分隔
- 各個鍵與值之間用一個冒號分隔
- 字典是動態(tài)的
字典使用:創(chuàng)建
創(chuàng)建字典:
- --使用大括號填充鍵值對
- --通過構(gòu)造方法dict()
- --使用字典推導(dǎo)式
# 創(chuàng)建字典
# --使用大括號填充鍵值對
a = {"name": "happy", "age": 18}
print(type(a), a)
# --通過構(gòu)造方法dict()
b = dict()
print(type(b), b)
c = dict([("name", "happy"), ("age", 18)])
print(type(c), c)
# --使用字典推導(dǎo)式
d = {i: j for i, j in [("name", "happy"), ("age", 18)]}
print(type(d), d)
字典使用:訪問元素
訪問元素:
- --與字典也支持支持中括號記法[key]
- --字典使用鍵來訪問其關(guān)聯(lián)的值
- --訪問時對應(yīng)的key必須要存在
# 訪問元素
# --與字典也支持支持中括號記法[key]
# --字典使用鍵來訪問其關(guān)聯(lián)的值
# --訪問時對應(yīng)的key必須要存在
a = {"name": "happy", "age": 18}
print(a["name"])
字典使用:操作元素
語法:dict[key]=value
添加元素:
--鍵不存在
修改元素:
---鍵已存在
# 語法:dict[key]=value
# 添加元素
# --鍵不存在
# 修改元素
# ---鍵已存在
a = {"name": "happy", "age": 18}
a["name"] = "lucky"
print(a)
a["sex"] = "man"
print(a)
字典使用:嵌套字典
嵌套字典:字典的值可以是字典對象
# 嵌套字典
# 字典的值可以是字典對象
a = {'name': {'lucky': 5, "happy": 6}, 'age': 18, 'sex': 'man'}
print(a['name']["lucky"])
a['name']["lucky"] = 10
print(a)
字典常用方法
- keys()
- keys()
返回由字典鍵組成的一個新視圖對象
入?yún)ⅲ?/strong>無
返回
# 字典常用方法
# keys()
# 返回由字典鍵組成的一個新視圖對象
# 入?yún)ⅲ簾o
# 返回:
a = {'name': 'lucky', 'age': 18, 'sex': 'man'}
print(a.keys())
print(list(a.keys()))
values()
values()
返回由字典值組成的一個新視圖對象
入?yún)ⅲ簾o
返回:
# values()
# 返回由字典值組成的一個新視圖對象
# 入?yún)ⅲ簾o
# 返回:
a = {'name': 'lucky', 'age': 18, 'sex': 'man'}
print(a.values())
print(list(a.values()))
items()
values()
返回由字典項((鍵,值)對)組成的一個新視圖對象
入?yún)ⅲ簾o
返回:
# items()
# 返回由字典項((鍵,值)對)組成的一個新視圖對象
# 入?yún)ⅲ簾o
# 返回
a = {'name': 'lucky', 'age': 18, 'sex': 'man'}
print(a.items())
print(list(a.items()))
get()
get(key)
獲取指定key關(guān)聯(lián)的value值
入?yún)ⅲ?/strong>key:字典的鍵,必傳
返回:
- --如果key存在于字典中,返回key關(guān)聯(lián)的value值。
- --如果key不存在,則返回None
此方法的好處是無需擔(dān)心key是否存在,永遠都不會引發(fā)KeyError錯誤。
# get(key)
# 獲取指定key關(guān)聯(lián)的value值
# 入?yún)ⅲ簁ey:字典的鍵,必傳
# 返回:
# --如果key存在于字典中,返回key關(guān)聯(lián)的value值。
# --如果key不存在,則返回None
# 此方法的好處是無需擔(dān)心key是否存在,永遠都不會引發(fā)KeyError錯誤。
a = {'name': 'lucky', 'age': 18, 'sex': 'man'}
print(a.get("name"))
print(a.get("cc"))
update()
update(dict)
使用來自dict的鍵/值對更新字典,覆蓋原有的鍵和值
入?yún)ⅲ?/strong>字典對象,必傳
返回:None
# update(dict)
# 使用來自dict的鍵/值對更新字典,覆蓋原有的鍵和值
# 入?yún)ⅲ鹤值鋵ο螅貍?
# 返回:None
a = {'name': 'lucky', 'age': 18, 'sex': 'man'}
a.update({'name': 'happy', 'cc': 18})
print(a)
pop()
pop(key)
刪除指定key的鍵值對,并返回對應(yīng)value值
入?yún)ⅲ?/strong>
key:必傳
返回:
- --如果key存在于字典中,則將其移除并返回value值
- --如果key不存在與字典中,則會引發(fā)KeyError
# pop(key)
# 刪除指定key的鍵值對,并返回對應(yīng)value值
# 入?yún)ⅲ?
# key:必傳
# 返回:
# --如果key存在于字典中,則將其移除并返回value值
# --如果key不存在與字典中,則會引發(fā)KeyError
a = {'name': 'lucky', 'age': 18, 'sex': 'man'}
print(a.pop("sex"))
print(a)
字典推導(dǎo)式
字典推導(dǎo)式:可以從任何以鍵值對作為元素的可迭代對象中構(gòu)建出字典
實例:給定一個字典對象{"a":1,"b":2,"c":3},找出其中所有大于1的鍵值對,同時value值進行平方運算。
# 字典推導(dǎo)式:可以從任何以鍵值對作為元素的可迭代對象中構(gòu)建出字典
# 實例:給定一個字典對象{"a":1,"b":2,"c":3},找出其中所有大于1的鍵值對,同時value值進行平方運算。
a = {"a": 1, "b": 2, "c": 3}
b = {i: j ** 2 for i, j in a.items() if j > 1}
print(b)
原文鏈接:https://blog.csdn.net/weixin_50464533/article/details/126511049
相關(guān)推薦
- 2022-08-01 詳解Python圖像形態(tài)學(xué)處理(開運算,閉運算,梯度運算)_python
- 2022-03-19 解析OpenXml?Pptx的邊框虛線轉(zhuǎn)為WPF的邊框虛線問題_C#教程
- 2022-08-18 詳解Flutter中數(shù)據(jù)傳遞的方式_Android
- 2022-05-16 深入理解docker鏡像的分層(小白必看)_docker
- 2022-06-02 詳解IIS在ASP.NET?Core下的兩種部署模式_實用技巧
- 2022-11-10 Android?Jetpack組件支持庫DataBinding與ViewModel與LiveData
- 2022-03-21 C語言打印正方形實例代碼_C 語言
- 2022-05-26 Tomcat服務(wù)部署及優(yōu)化的實現(xiàn)_Tomcat
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支