用Python进行AI数据分析进阶教程14:Python字典的操作
👉 欢迎订阅🔗
《用Python进行AI数据分析进阶教程》专栏
《AI大模型应用实践进阶教程》专栏
《Python编程知识集锦》专栏
《智能辅助驾驶》专栏
《工具软件及IT技术集锦》专栏
关键词:字典、键值对、键的唯一性、访问元素、遍历字典
概要:本文介绍了 Python 中字典的基本概念和常用操作。字典是一种无序的键值对集合,用于存储和检索数据,其中键必须是唯一的且为不可变类型,而值可以是任意数据类型。文章详细讲解了字典的创建、访问、添加、修改和删除元素的方法,同时指出使用 get() 方法可以避免因键不存在而导致的异常问题。此外,还说明了如何遍历字典中的键、值以及键值对。通过具体示例展示了字典的操作方式,帮助读者更好地理解和应用字典这一重要数据结构。
在 Python 中,字典(dictionary)是一种无序的键值对(key-value pairs)集合,用于存储和检索数据。以下是关于字典操作的概念、关键点、注意点及举例说明:
1、概念
字典由键(key)和对应的值(value)组成,键是唯一的,用于索引和访问对应的值。值可以是任意数据类型,如整数、字符串、列表、字典等。字典使用花括号 {} 表示,键值对之间用冒号 : 分隔,不同键值对之间用逗号 , 分隔。
2、关键点
● 键的唯一性:字典中的键必须是唯一的,如果尝试添加重复的键,新的值会覆盖旧的值。
● 键的数据类型:键必须是不可变的数据类型,如字符串、数字、元组等,不能使用列表、字典等可变数据类型作为键。
● 值的数据类型:值可以是任意数据类型,包括可变和不可变的数据类型。
● 访问元素:通过键来访问对应的值,使用 字典名[键] 的形式。
● 添加和修改元素:通过 字典名[新键] = 新值 的形式可以添加新的键值对;如果键已经存在,则会修改对应的值。
● 删除元素:使用 del 语句可以删除指定键值对,格式为 del 字典名[键] ;也可以使用 pop() 方法删除指定键值对并返回对应的值。
● 遍历字典:可以使用 for 循环遍历字典的键、值或键值对。
3、注意点
● 键不存在的情况:当使用 字典名[键] 访问元素时,如果键不存在,会抛出 KeyError 异常。可以使用 get() 方法来避免这种情况, get() 方法在键不存在时会返回指定的默认值(默认为 None )。
● 字典的无序性:字典中的元素是无序的,不能使用索引来访问元素,只能通过键来访问。
● 修改字典时的影响:由于字典是可变对象,当多个变量引用同一个字典时,修改其中一个变量所引用的字典,会影响到其他变量所引用的字典。
4、举例说明
(1)创建字典:
Python脚本
# 创建一个名为 my_dict 的字典 # 字典是一种无序的数据结构,由键值对组成
# 这里的键分别是 "name"、"age"、"city" # 对应的值分别是 "Alice"、25、"New York"
my_dict = {"name": "Alice", "age": 25, "city": "New York"}
# 打印字典 my_dict,会输出字典中的所有键值对
print(my_dict) # 输出 {'name': 'Alice', 'age': 25, 'city': 'New York'}
(2)访问元素:
Python脚本
# 从字典 my_dict 中通过键 "name" 来获取对应的值,并将其打印输出
# 若字典里存在 "name" 这个键,就会输出该键对应的值
print(my_dict["name"]) # 输出 Alice
# 这是一行被注释掉的代码
# 如果取消注释,代码会尝试通过键 "job" 从字典 my_dict 中获取对应的值
# 但由于字典中不存在键 "job",会引发 KeyError 异常
# print(my_dict["job"])
# 会抛出 KeyError 异常
# 利用字典的 get 方法来尝试获取键 "job" 对应的值
# get 方法接收两个参数,第一个是要查找的键,第二个是当键不存在时返回的默认值
# 若字典中存在 "job" 这个键,会返回该键对应的值;若不存在,就会返回 "未找到"
# 最终将获取到的结果打印输出
print(my_dict.get("job", "未找到")) # 输出 未找到。
# 使用 get() 方法避免异常
(3)添加和修改元素:
Python脚本
# 向字典 my_dict 中添加一个新的键值对 # 键为 "job",对应的值为 "Engineer"
# 如果字典中原本不存在该键,则会创建该键值对;若已存在,则会更新该键对应的值
my_dict["job"] = "Engineer"
# 打印更新后的字典 my_dict,此时字典中应包含新添加的键值对 "job": "Engineer"
print(my_dict) # 输出 {'name': 'Alice', 'age': 25, 'city': 'New York', 'job': 'Engineer'}
# 修改字典 my_dict 中键 "age" 对应的值
# 由于字典是可变的数据类型,可直接通过键来修改其对应的值
# 这里将 "age" 对应的值从原来的值更新为 26
my_dict["age"] = 26
# 打印再次更新后的字典 my_dict,此时字典中 "age" 键对应的值为 26
print(my_dict) # 输出 {'name': 'Alice', 'age': 26, 'city': 'New York', 'job': 'Engineer'}
(4)删除元素:
Python脚本
# 使用 del 语句从字典 my_dict 中删除指定键 "city" 及其对应的值
# 如果该键存在于字典中,会将其键值对彻底移除;若键不存在,会引发 KeyError 异常
del my_dict["city"]
# 打印删除键 "city" 及其对应值后的字典 my_dict
print(my_dict) # 输出 {'name': 'Alice', 'age': 26, 'job': 'Engineer'}
# 使用字典的 pop 方法从字典 my_dict 中移除指定键 "age" 及其对应的值
# 该方法会返回被移除键对应的值,并将其赋值给变量 removed_value
# 如果键存在于字典中,会将其移除并返回值;
# 若键不存在,且未提供默认值,则会引发 KeyError 异常
removed_value = my_dict.pop("age")
# 打印被移除的键 "age" 对应的值
print(removed_value) # 输出 26
# 打印移除键 "age" 及其对应值后的字典 my_dict
print(my_dict) # 输出 {'name': 'Alice', 'job': 'Engineer'}
(5)遍历字典:
Python脚本
# 遍历键
# 使用 for 循环遍历字典 my_dict
# 在字典的遍历中,当直接使用 for 循环遍历字典时,默认是遍历字典的键
# 每次循环,变量 key 会依次获取字典 my_dict 中的一个键
for key in my_dict:
# 打印当前循环中获取到的键
print(key) # 输出 name job
# 遍历值
# 使用 for 循环遍历字典 my_dict 中的所有值
# my_dict.values() 是字典的一个方法,它会返回一个包含字典中所有值的视图对象
# 这个视图对象可以被迭代,使得我们能够依次访问字典里每个键对应的值
# 在每次循环中,变量 value 会依次被赋值为字典 my_dict 中的一个值
for value in my_dict.values():
# 打印当前循环中获取到的字典的值
print(value)
# 遍历键值对
# 使用 for 循环遍历字典 my_dict 的所有键值对
# my_dict.items() 是字典的一个方法,它会返回一个包含字典中所有键值对的视图对象
# 这个视图对象由多个元组组成,每个元组包含两个元素,分别是字典中的键和对应的值
# 在每次循环中,元组中的两个元素会分别解包赋值给变量 key 和 value
for key, value in my_dict.items():
# 打印当前循环中获取到的键和对应的值
print(key, value) # 输出 name Alice job Engineer
通过以上操作和示例,可以更好地理解和使用 Python 中的字典来处理数据。
——The END——
🔗 欢迎订阅专栏
序号 | 专栏名称 | 说明 |
---|---|---|
1 | 用Python进行AI数据分析进阶教程 | 《用Python进行AI数据分析进阶教程》专栏 |
2 | AI大模型应用实践进阶教程 | 《AI大模型应用实践进阶教程》专栏 |
3 | Python编程知识集锦 | 《Python编程知识集锦》专栏 |
4 | 智能辅助驾驶 | 《智能辅助驾驶》专栏 |
5 | 工具软件及IT技术集锦 | 《工具软件及IT技术集锦》专栏 |
👉 关注我 @理工男大辉郎 获取实时更新
欢迎关注、收藏或转发。
敬请关注 我的
微信搜索公众号:cnFuJH
CSDN博客:理工男大辉郎