Python字典操作指南,掌握编程中必备的数据结构!

发布时间:2024年01月05日

4371a7f6f91ef7748ddb0a3f7ad8c0ca.jpeg

更多Python学习内容:ipengtao.com

字典(Dictionary)是Python中一种非常重要和常用的数据结构,它用于存储键-值对的数据。在Python中,字典是可变(Mutable)的、无序(Unordered)的、可哈希(Hashable)的数据结构,可以通过键来访问值。本文将深入探讨如何正确使用字典,并介绍字典的各种功能和用法。

字典的创建和基本操作

创建字典以及进行基本的操作。

创建字典

在Python中,可以使用大括号{}来创建一个字典,或者使用dict()构造函数。

以下是一些示例:

#?使用大括号创建字典
my_dict?=?{"name":?"Alice",?"age":?30,?"city":?"New?York"}

#?使用?dict()?构造函数创建字典
another_dict?=?dict(name="Bob",?age=25,?city="San?Francisco")

访问字典的值

可以通过键来访问字典中的值,使用方括号[]来获取键对应的值,或者使用get()方法。

示例:

#?使用方括号获取值
name?=?my_dict["name"]
age?=?my_dict["age"]

#?使用?get()?方法获取值
city?=?my_dict.get("city")

添加和修改字典的元素

可以通过指定键来添加或修改字典中的元素。如果键已存在,将会更新对应的值;如果键不存在,将会创建新的键值对。

示例:

#?添加新的键值对
my_dict["email"]?=?"alice@example.com"

#?修改已有键的值
my_dict["age"]?=?31

删除字典的元素

可以使用del语句删除字典中的元素,也可以使用pop()方法删除指定键的元素。

示例:

#?使用?del?语句删除元素
del?my_dict["email"]

#?使用?pop()?方法删除元素
my_dict.pop("age")

字典的遍历

字典中的元素是无序的,但可以通过不同的方式进行遍历。以下是一些常见的遍历方法。

遍历键

可以使用keys()方法获取字典中的所有键,并进行遍历。

示例:

for?key?in?my_dict.keys():
????print(key)

遍历值

可以使用values()方法获取字典中的所有值,并进行遍历。

示例:

for?value?in?my_dict.values():
????print(value)

遍历键值对

可以使用items()方法获取字典中的所有键值对,并进行遍历。

示例:

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

字典的常见操作

除了基本的创建、访问和遍历操作,字典还支持许多其他常见操作,例如判断键是否存在、获取字典长度等。

判断键是否存在

可以使用in关键字来判断键是否存在于字典中。

示例:

if?"name"?in?my_dict:
????print("Name?is?in?the?dictionary.")

获取字典长度

可以使用len()函数获取字典中键值对的数量。

示例:

length?=?len(my_dict)
print(f"The?dictionary?contains?{length}?key-value?pairs.")

清空字典

可以使用clear()方法清空字典中的所有键值对。

示例:

my_dict.clear()

字典的嵌套

字典中的值可以是任何数据类型,包括另一个字典。这种嵌套字典的方式可以创建复杂的数据结构。

示例:

person?=?{
????"name":?"Alice",
????"age":?30,
????"address":?{
????????"street":?"123?Main?St",
????????"city":?"New?York"
????}
}

通过嵌套字典,可以更好地组织和表示复杂的数据关系。

字典的默认值

有时候需要访问字典中不存在的键时,不抛出 KeyError 异常,而是返回一个默认值。可以使用get()方法来实现这一点。

示例:

value?=?my_dict.get("nonexistent_key",?"default_value")

如果字典中不存在键"nonexistent_key",则上述代码将返回"default_value"。

字典推导式

类似于列表推导式,Python还支持字典推导式,用于创建字典。

示例:

numbers?=?[1,?2,?3,?4,?5]
square_dict?=?{num:?num?**?2?for?num?in?numbers}

上述代码将创建一个包含数字和它们的平方的字典。

字典的排序

字典本身是无序的,但可以根据键或值对字典进行排序。以下是一些排序字典的示例。

按键排序

可以使用sorted()函数按照键对字典进行排序。

示例:

sorted_dict?=?{key:?my_dict[key]?for?key?in?sorted(my_dict)}

按值排序

可以使用sorted()函数和自定义的排序函数来按值对字典进行排序。

示例:

sorted_dict?=?{key:?value?for?key,?value?in?sorted(my_dict.items(),?key=lambda?item:?item[1])}

字典的复制

在Python中,字典的赋值是浅拷贝,如果需要创建一个新的独立字典,可以使用copy()方法或字典构造函数。

示例:

new_dict?=?my_dict.copy()??#?使用?copy()?方法
another_dict?=?dict(my_dict)??#?使用字典构造函数

总结

本文介绍了如何正确使用字典(dict)这一重要的数据结构,包括字典的创建、基本操作、遍历、常见操作、嵌套、默认值、推导式、排序、复制以及性能方面的知识点。字典是Python编程中不可或缺的工具之一,掌握它的用法将极大地提高代码的灵活性和可读性。

如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!

更多Python学习内容:ipengtao.com

干货笔记整理

? 100个爬虫常见问题.pdf ,太全了!

Python 自动化运维 100个常见问题.pdf

Python Web 开发常见的100个问题.pdf

124个Python案例,完整源代码!

PYTHON 3.10中文版官方文档

耗时三个月整理的《Python之路2.0.pdf》开放下载

最经典的编程教材《Think Python》开源中文版.PDF下载

6da7d4815a3e05f7aea8167fccadf7be.png

点击“阅读原文”,获取更多学习内容

文章来源:https://blog.csdn.net/wuShiJingZuo/article/details/135398851
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。