最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python 字典常用操作之鍵值對(duì)的高效數(shù)據(jù)管理

 更新時(shí)間:2026年02月14日 09:58:10   作者:碼云數(shù)智-大飛  
在 Python 的內(nèi)置數(shù)據(jù)結(jié)構(gòu)中,字典(dict)以其靈活、高效和直觀的特性,成為開(kāi)發(fā)者最常用的工具之一,本文將帶你從零開(kāi)始,系統(tǒng)掌握 Python字典的基礎(chǔ)知識(shí)與常用操作,感興趣的朋友跟隨小編一起看看吧

在 Python 的內(nèi)置數(shù)據(jù)結(jié)構(gòu)中,字典(dict)以其靈活、高效和直觀的特性,成為開(kāi)發(fā)者最常用的工具之一。無(wú)論是存儲(chǔ)配置信息、緩存數(shù)據(jù),還是進(jìn)行快速查找,字典都扮演著不可或缺的角色。本文將帶你從零開(kāi)始,系統(tǒng)掌握 Python 字典的基礎(chǔ)知識(shí)與常用操作。

一、什么是字典?

字典是一種可變的、無(wú)序的(在 Python 3.7+ 中保持插入順序)、以鍵值對(duì)(key-value pair)形式存儲(chǔ)數(shù)據(jù)的容器。

  • 鍵(key):必須是不可變類型(如字符串、數(shù)字、元組),且唯一。
  • 值(value):可以是任意類型,包括列表、函數(shù)甚至另一個(gè)字典。

字典用花括號(hào) {} 定義,例如:

student = {
    "name": "Elizabeth",
    "age": 20,
    "courses": ["Math", "Physics"]
}

二、創(chuàng)建字典的幾種方式

直接使用花括號(hào)

d = {"a": 1, "b": 2}

使用 dict() 構(gòu)造函數(shù):

d = dict(name="Alice", age=25)
# 或
d = dict()

從其他數(shù)據(jù)結(jié)構(gòu)生成(如列表推導(dǎo)式):

keys = ['x', 'y', 'z']
values = [10, 20, 30]
d = dict(zip(keys, values))  # {'x': 10, 'y': 20, 'z': 30}

三、字典的基本操作

1. 訪問(wèn)值

通過(guò)鍵獲取對(duì)應(yīng)的值:

print(student["name"])  # 輸出: Elizabeth

?? 若鍵不存在,會(huì)拋出 KeyError。為避免錯(cuò)誤,可使用 .get() 方法:

print(student.get("grade", "N/A"))  # 鍵不存在時(shí)返回默認(rèn)值 "N/A"

2. 添加或修改元素

student["grade"] = "A"      # 新增鍵值對(duì)
student["age"] = 21         # 修改已有鍵的值

3. 刪除元素

del student["age"]          # 刪除指定鍵
# 或
grade = student.pop("grade")  # 刪除并返回值

4. 檢查鍵是否存在

if "name" in student:
    print("Name is recorded.")

四、常用方法與技巧

方法說(shuō)明
keys()返回所有鍵的視圖(類似列表)
values()返回所有值的視圖
items()返回鍵值對(duì)的元組列表,常用于遍歷
update()合并另一個(gè)字典或鍵值對(duì)
clear()清空字典

遍歷字典示例:

for key, value in student.items():
    print(f"{key}: {value}")

五、字典的典型應(yīng)用場(chǎng)景

計(jì)數(shù)器:統(tǒng)計(jì)字符、單詞出現(xiàn)次數(shù)

from collections import defaultdict
count = defaultdict(int)
for char in "hello":
    count[char] += 1

配置管理:存儲(chǔ)程序參數(shù)

config = {"host": "localhost", "port": 8080}
  • 緩存/映射:快速查找(如用戶ID → 用戶信息)
  • JSON 數(shù)據(jù)表示:字典結(jié)構(gòu)與 JSON 高度兼容,常用于 API 交互

六、注意事項(xiàng)

  • 字典的鍵必須可哈希(immutable),不能是列表或字典。
  • 自 Python 3.7 起,字典保持插入順序,但不應(yīng)依賴此特性進(jìn)行邏輯設(shè)計(jì)(除非明確需要)。
  • 多個(gè)變量引用同一個(gè)字典時(shí),修改會(huì)影響所有引用(因?yàn)樽值涫强勺儗?duì)象)。

七、小結(jié)

字典是 Python 中功能強(qiáng)大且使用頻率極高的數(shù)據(jù)結(jié)構(gòu)。它以“鍵”為索引,實(shí)現(xiàn) O(1) 平均時(shí)間復(fù)雜度的查找、插入和刪除操作,極大提升了程序效率。掌握字典的創(chuàng)建、訪問(wèn)、修改與遍歷,是邁向 Python 編程熟練之路的重要一步。

正如字典本身所寓意的——“以名取物”,在代碼世界中,它幫助我們用有意義的名稱組織和管理數(shù)據(jù),讓程序更清晰、更高效。

提示:當(dāng)你需要“通過(guò)名字找東西”時(shí),優(yōu)先考慮使用字典!

到此這篇關(guān)于Python 字典常用操作之鍵值對(duì)的高效數(shù)據(jù)管理的文章就介紹到這了,更多相關(guān)python字典鍵值對(duì)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring Boot靜態(tài)資源路徑的配置與修改詳解

    Spring Boot靜態(tài)資源路徑的配置與修改詳解

    最近在做SpringBoot項(xiàng)目的時(shí)候遇到了“白頁(yè)”問(wèn)題,通過(guò)查資料對(duì)SpringBoot訪問(wèn)靜態(tài)資源做了總結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-09-09
  • ThreadPoolExecutor中的submit()方法詳細(xì)講解

    ThreadPoolExecutor中的submit()方法詳細(xì)講解

    在使用線程池的時(shí)候,發(fā)現(xiàn)除了execute()方法可以執(zhí)行任務(wù)外,還發(fā)現(xiàn)有一個(gè)方法submit()可以執(zhí)行任務(wù),本文就詳細(xì)的介紹一下ThreadPoolExecutor中的submit()方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2022-04-04
  • Java通過(guò)遞歸算法解決迷宮與漢諾塔及八皇后問(wèn)題

    Java通過(guò)遞歸算法解決迷宮與漢諾塔及八皇后問(wèn)題

    方法就是用來(lái)完成解決某件事情或?qū)崿F(xiàn)某個(gè)功能的辦法;程序調(diào)用自身的編程技巧稱為遞歸,本文主要講的是通過(guò)遞歸來(lái)實(shí)現(xiàn)三個(gè)經(jīng)典的問(wèn)題,解決迷宮,漢諾塔,八皇后問(wèn)題,感興趣的朋友可以參考一下
    2022-05-05
  • HttpServletRequest對(duì)象方法的用法小結(jié)

    HttpServletRequest對(duì)象方法的用法小結(jié)

    HttpServletRequest對(duì)象代表客戶端的請(qǐng)求,當(dāng)客戶端通過(guò)HTTP協(xié)議訪問(wèn)服務(wù)器時(shí),HTTP請(qǐng)求頭中的所有信息都封裝在這個(gè)對(duì)象中,開(kāi)發(fā)人員通過(guò)這個(gè)對(duì)象的相關(guān)方法,即可以獲得客戶的這些信息
    2017-03-03
  • Java邏輯運(yùn)算符之&&、||?與&、?|的區(qū)別及應(yīng)用

    Java邏輯運(yùn)算符之&&、||?與&、?|的區(qū)別及應(yīng)用

    這篇文章主要介紹了Java邏輯運(yùn)算符之&&、||?與&、?|的區(qū)別及應(yīng)用的相關(guān)資料,分別是&&、||?與&、?|,并探討了它們?cè)诓煌瑧?yīng)用場(chǎng)景中的表現(xiàn)和優(yōu)化效果,需要的朋友可以參考下
    2025-03-03
  • Spring之配置multipartResolver解析器、上傳文件、處理文件過(guò)程

    Spring之配置multipartResolver解析器、上傳文件、處理文件過(guò)程

    文章介紹了Spring中處理multipart表單的兩種解析器(CommonsMultipartResolver和StandardServletMultipartResolver)的配置方法,包括文件大小限制、臨時(shí)存儲(chǔ)路徑設(shè)置,以及通過(guò)enctype和accept屬性控制上傳格式,強(qiáng)調(diào)MultipartFile需配置解析器,而Part接口無(wú)需
    2025-08-08
  • Spring運(yùn)行時(shí)手動(dòng)注入bean的方法實(shí)例

    Spring運(yùn)行時(shí)手動(dòng)注入bean的方法實(shí)例

    spring給我們提供了IOC服務(wù),讓我們可以用注解的方式,方便的使用bean的相互引用,下面這篇文章主要給大家介紹了關(guān)于Spring運(yùn)行時(shí)手動(dòng)注入bean的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • Java使用opencv識(shí)別二維碼的完整步驟

    Java使用opencv識(shí)別二維碼的完整步驟

    OpenMV是一個(gè)開(kāi)源,低成本,功能強(qiáng)大的機(jī)器視覺(jué)模塊,下面這篇文章主要給大家介紹了關(guān)于Java使用opencv識(shí)別二維碼的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-09-09
  • SpringBoot 代碼風(fēng)格推薦

    SpringBoot 代碼風(fēng)格推薦

    本文主要介紹了Spring Boot 項(xiàng)目定義了統(tǒng)一的包結(jié)構(gòu)與命名規(guī)范,涵蓋分層架構(gòu)、實(shí)體對(duì)象、工具類的命名與放置規(guī)則,強(qiáng)調(diào)各層對(duì)象隔離與技術(shù)層分,下面就來(lái)詳細(xì)的介紹一下
    2026-05-05
  • JAVA JDK8 List分組獲取第一個(gè)元素的方法

    JAVA JDK8 List分組獲取第一個(gè)元素的方法

    今天小編就為大家分享一篇關(guān)于JAVA JDK8 List分組獲取第一個(gè)元素的方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12

最新評(píng)論

且末县| 长岭县| 曲阳县| 南川市| 荔波县| 都昌县| 图们市| 阿鲁科尔沁旗| 新丰县| 大洼县| 孙吴县| 扎赉特旗| 庆阳市| 清河县| 三明市| 色达县| 江口县| 纳雍县| 田阳县| 巩留县| 庆阳市| 佛山市| 蓬溪县| 新余市| 南宫市| 澄江县| 周宁县| 武城县| 普安县| 河源市| 牙克石市| 泸西县| 光泽县| 绥化市| 皋兰县| 靖江市| 吴堡县| 东兰县| 灌南县| 隆安县| 哈尔滨市|