一文掌握python数组字典dict()的全部用法(零基础学python(三))

简介: 一文掌握python数组字典dict()的全部用法(零基础学python(三))

当我们需要在 Python 中存储和访问键值对数据时,最好使用字典。在下面的代码示例中,我将介绍 Python 字典的各种用法和实例。


创建字典

可以使用花括号 {} 或 dict() 函数来创建一个空字典。下面的代码示例演示如何创建字典:

# 创建空字典
empty_dict = {}
print(empty_dict)

# 使用字面量创建字典
person_dict = {"name": "Alice", "age": 25, "city": "New York"}
print(person_dict)

# 使用 dict() 函数创建字典
fruit_dict = dict(apple=3, banana=2, cherry=5)
print(fruit_dict)


访问字典元素

可以通过键来访问字典中的元素。如果键不存在,Python 将引发 KeyError 异常。下面的代码示例演示如何访问字典元素:

person_dict = {"name": "Alice", "age": 25, "city": "New York"}

# 通过键访问字典元素
print(person_dict["name"])
print(person_dict["age"])
print(person_dict["city"])

# 尝试访问不存在的键会引发 KeyError 异常
# print(person_dict["gender"])


添加和更新字典元素

可以使用赋值运算符或 update() 方法向字典中添加或更新元素。如果键不存在,将添加新元素;如果键已经存在,将更新现有值。下面的代码示例演示如何添加和更新字典元素:

fruit_dict = {"apple": 3, "banana": 2, "cherry": 5}

# 添加新元素
fruit_dict["orange"] = 4
print(fruit_dict)

# 更新现有值
fruit_dict["banana"] = 7
print(fruit_dict)

# 使用 update() 方法添加多个元素
fruit_dict.update({"pear": 6, "kiwi": 8})
print(fruit_dict)


删除字典元素

可以使用 del 关键字或 pop() 方法从字典中删除元素。如果键不存在,将引发 KeyError 异常。下面的代码示例演示如何删除字典元素:


fruit_dict = {"apple": 3, "banana": 2, "cherry": 5}

# 删除指定键的元素
del fruit_dict["banana"]
print(fruit_dict)

# 使用 pop() 方法删除指定键的元素
fruit_dict.pop("cherry")
print(fruit_dict)

# 尝试删除不存在的键会引发 KeyError 异常
# del fruit_dict["orange"]
# fruit_dict.pop("orange")


字典遍历

可以使用 for 循环遍历字典中的键、值或键值对。下面的代码示例演示如何遍历字典:


fruit_dict = {"apple": 3, "banana": 2, "cherry": 5}

# 遍历键
for key in fruit_dict:
    print(key)

# 遍历值
for value in fruit_dict.values():
    print(value)

# 遍历键值对
for key, value in fruit_dict.items():
    print(key, value)


字典推导式

可以使用字典推导式来创建新字典,该字典基于现有字典的筛选或转换。下面的代码示例演示如何使用字典推导式:


fruit_dict = {"apple": 3, "banana": 2, "cherry": 5}

# 筛选出数量大于 3 的水果
filtered_dict = {"apple": 3, 
                 key: value for key, value in fruit_dict.items() if value > 3}
print(filtered_dict)

# 将所有水果数量乘以 2
multiplied_dict = {key: value * 2 for key, value in fruit_dict.items()}
print(multiplied_dict)

Python中的字典(dictionary)是一种非常常用的数据结构,它可以存储一系列的键值对,其中每个键都是唯一的。字典是一种可变的数据类型,可以动态地添加、删除和修改键值对。以下是Python字典的一些高阶用法:


字典的键值对交换

可以使用以下方法交换字典的键和值:


my_dict = {'apple': 1, 'banana': 2, 'orange': 3}
new_dict ={value: key for key, value in my_dict.items()}
print(new_dict)
# 输出:{1: 'apple', 2: 'banana', 3: 'orange'}


字典的排序

字典本身是没有顺序的,但是可以通过以下方法对字典的键或值进行排序:


# 按照键排序
my_dict = {'apple': 1, 'banana': 2, 'orange': 3}
sorted_dict = {key: my_dict[key] for key in sorted(my_dict)}
print(sorted_dict)
# 输出:{'apple': 1, 'banana': 2, 'orange': 3}

# 按照值排序
my_dict = {'apple': 1, 'banana': 2, 'orange': 3}
sorted_dict = {key: value for key, value in sorted(my_dict.items(), key=lambda item: item[1])}
print(sorted_dict)
# 输出:{'apple': 1, 'banana': 2, 'orange': 3}


字典的合并

可以使用update()方法将一个字典合并到另一个字典中:


dict1 = {'apple': 1, 'banana': 2}
dict2 = {'orange': 3, 'pear': 4}
dict1.update(dict2)
print(dict1)
# 输出:{'apple': 1, 'banana': 2, 'orange': 3, 'pear': 4}


字典的过滤

可以使用以下方法对字典进行过滤,只保留符合条件的键值对:


my_dict = {'apple': 1, 'banana': 2, 'orange': 3}
filtered_dict = {key: value for key, value in my_dict.items() if value > 1}
print(filtered_dict)
# 输出:{'banana': 2, 'orange': 3}


字典的默认值

如果字典中不存在某个键,可以使用以下方法设置一个默认值:


my_dict = {'apple': 1, 'banana': 2}
print(my_dict.get('orange', 0))
# 输出:0

以上是Python字典的一些高阶用法。字典是一种非常方便的数据结构,在Python中被广泛应用。掌握了以上高阶用法,可以更加高效地使用字典,并在实际开发中发挥更大的作用。

以上是 Python 字典的基本用法和示例。希望这些例子能帮助您更好地了解 Python 字典的使用方法。

相关文章
|
4月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
324 1
|
4月前
|
存储 Java 数据处理
(numpy)Python做数据处理必备框架!(一):认识numpy;从概念层面开始学习ndarray数组:形状、数组转置、数值范围、矩阵...
Numpy是什么? numpy是Python中科学计算的基础包。 它是一个Python库,提供多维数组对象、各种派生对象(例如掩码数组和矩阵)以及用于对数组进行快速操作的各种方法,包括数学、逻辑、形状操作、排序、选择、I/0 、离散傅里叶变换、基本线性代数、基本统计运算、随机模拟等等。 Numpy能做什么? numpy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。 线性代数、随机数生成以及傅里叶变换功能。 用于集成由C、C++
458 1
|
4月前
|
机器学习/深度学习 PyTorch 算法框架/工具
python torch基础用法
本教程系统讲解PyTorch基础,涵盖张量操作、自动求导、神经网络构建、训练流程、GPU加速及模型保存等核心内容,结合代码实例帮助初学者快速掌握深度学习开发基础,是入门PyTorch的实用指南。
659 6
|
5月前
|
存储 JSON 数据管理
Python字典:高效数据管理的瑞士军刀
Python字典基于哈希表实现,提供接近O(1)的高效查找,支持增删改查、遍历、合并等丰富操作,广泛应用于计数、缓存、配置管理及JSON处理。其灵活性与性能使其成为数据处理的核心工具。
613 0
|
6月前
|
Go 调度 Python
Golang协程和Python协程用法上的那些“不一样”
本文对比了 Python 和 Go 语言中协程的区别,重点分析了调度机制和执行方式的不同。Go 的协程(goroutine)由运行时自动调度,启动后立即执行;而 Python 协程需通过 await 显式调度,依赖事件循环。文中通过代码示例展示了两种协程的实际运行效果。
290 7
|
5月前
|
存储 缓存 安全
Python字典:从入门到精通的实用指南
Python字典如瑞士军刀般强大,以键值对实现高效数据存储与查找,广泛应用于配置管理、缓存、统计等场景。本文详解字典基础、进阶技巧、实战应用与常见陷阱,助你掌握这一核心数据结构,写出更高效、优雅的Python代码。
141 0
|
6月前
|
存储 数据处理 Python
python dict的所有基础知识
python dict的所有基础知识
506 0
|
9月前
|
人工智能 数据库连接 API
掌握Python的高级用法:技巧、技术和实用性示例
本文分享了Python的高级用法,包括生成器、装饰器、上下文管理器、元类和并发编程等。生成器通过`yield`实现懒加载序列;装饰器用于增强函数功能,如添加日志或性能分析;上下文管理器借助`with`语句管理资源;元类动态定制类行为;并发编程利用`threading`和`asyncio`库提升任务执行效率。掌握这些高级概念可优化代码质量,解决复杂问题,提高程序性能与可维护性。
211 6
|
10月前
|
Python
Python教程:os 与 sys 模块详细用法
os 模块用于与操作系统交互,主要涉及夹操作、路径操作和其他操作。例如,`os.rename()` 重命名文件,`os.mkdir()` 创建文件夹,`os.path.abspath()` 获取文件绝对路径等。sys 模块则用于与 Python 解释器交互,常用功能如 `sys.path` 查看模块搜索路径,`sys.platform` 检测操作系统等。这些模块提供了丰富的工具,便于开发中处理系统和文件相关任务。
463 14
|
11月前
|
SQL Oracle 关系型数据库
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法

推荐镜像

更多