Python字典基础:创建、访问、修改与遍历详解

凌晨两点半
凌晨两点半
发布时间:2026-10-15| 4人浏览过
原创

本文详细介绍Python中字典的核心用法。涵盖使用花括号和dict()函数创建字典,通过[]和get()方法安全获取元素,利用in/not in判断键存在性,以及执行增删改操作。同时解析keys()、values()、items()视图对象及字典遍历技巧,帮助开发者掌握这一高效的数据结构。

一. 什么是字典

字典是Python内置的一种可变序列数据结构,与列表类似,但其内部元素无序排列,且以键值对(Key-Value)的形式存储数据。

二. 创建字典

在Python中,主要有两种创建字典的方式:一是直接使用大括号{ },二是调用内置函数dict()。

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/11 22:51
 
# 字典的创建
dict01={"A": 1, "B": 2, "C": 3}
# {'A': 1, 'B': 2, 'C': 3}
print(dict01)
dict02=dict(a=1, b=2,name="zs")
# {'a': 1, 'b': 2, 'name': 'zs'}
print(dict02)

三. 字典元素获取

获取字典中的元素值主要有两种途径:使用方括号[]或调用get()方法。两者的关键区别在于,当指定的键不存在时,使用[]会抛出KeyError异常,而get()方法则不会报错,默认返回None(也可指定默认返回值)。

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/11 22:51
 
# 字典的创建
dict01 = {"A": 1, "B": 2, "C": 3}
 
# 字典的元素获取
# 1
print(dict01["A"])
# 3
print(dict01.get("C"))
# KeyError: 'D'
# print(dict01["D"])

四. 字典元素的增删改操作

判断字典中是否包含特定键,可以使用in或not in运算符,其用法与列表中的成员检测一致。此外,字典支持对现有元素进行增加、删除和修改操作。

删除键值对通常使用del语句。增加新元素和修改现有元素的语法相同,区别仅在于目标键是否存在:若键已存在则覆盖原值,若不存在则新增该键值对。

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/11 22:51
 
# 字典的创建
dict01 = {"A": 1, "B": 2, "C": 3}
 
# True
print("A" in dict01)
# False
print("A" not in dict01)
 
# 删除 B
del dict01["B"]
# {'A': 1, 'C': 3}
print(dict01)
# 增加元素 D
dict01["D"]=4
# {'A': 1, 'C': 3, 'D': 4}
print(dict01)
# 修改D的值
dict01["D"]=40
# {'A': 1, 'C': 3, 'D': 40}
print(dict01)

五. 字典的视图操作

可以通过keys()、values()和items()三个方法分别获取字典中所有的键、所有的值以及所有的键值对。

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/11 22:51
 
# 字典的创建
dict01 = {"A": 1, "B": 2, "C": 3}
 
# 获取所有的key
keys = dict01.keys()
# 类型为 <class 'dict_keys'>
print(type(keys))
# dict_keys(['A', 'B', 'C'])
print(keys)
# 转化为列表 ['A', 'B', 'C']
print(list(keys))
 
# 获取所有的value
values = dict01.values()
# 类型为 <class 'dict_values'>
print(type(values))
# dict_values([1, 2, 3])
print(values)
# 转化为列表 [1, 2, 3]
print(list(values))
 
# 获取所有的键值对
items = dict01.items()
# <class 'dict_items'>
print(type(items))
# dict_items([('A', 1), ('B', 2), ('C', 3)])
print(items)
# 元组的数据结构 [('A', 1), ('B', 2), ('C', 3)]
print(list(items))

除了直接访问,还可以采用以下方式遍历字典中的元素:

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/11 22:51
 
# 字典的创建
dict01 = {"A": 1, "B": 2, "C": 3}
 
# A 1 1
# B 2 2
# C 3 3
for item in dict01:
    print(item,dict01[item],dict01.get(item))

字典总结如下:

字典中的键(key)不允许重复,而值(value)可以重复。

字典的键必须是不可变对象(如字符串、数字或元组)。

字典内部的元素是无序的,不保证插入顺序(注:Python 3.7+通常保持插入顺序,但语义上仍视为无序集合)。

字典支持动态扩容,但为了快速查找,可能会占用较多的内存空间。

到此这篇关于Python基础之字典的详细使用教程的文章就介绍到这了,更多相关Python字典内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。