简介
在这个实验中,你将学习如何在 Python 中检查字典是否包含特定的键。字典以键值对的形式存储数据,是一种基本的数据结构。
本实验将引导你通过 .keys()
方法探索字典的键,并将生成的视图对象转换为列表。你还将学习如何使用 in
运算符和 get()
方法来高效地确定字典中是否存在特定的键。
在这个实验中,你将学习如何在 Python 中检查字典是否包含特定的键。字典以键值对的形式存储数据,是一种基本的数据结构。
本实验将引导你通过 .keys()
方法探索字典的键,并将生成的视图对象转换为列表。你还将学习如何使用 in
运算符和 get()
方法来高效地确定字典中是否存在特定的键。
在这一步中,你将学习如何在 Python 中访问字典的键。字典是一种基本的数据结构,它以键值对的形式存储数据。了解如何检索键对于有效地使用字典至关重要。
首先,让我们创建一个简单的字典来进行操作。在 LabEx 环境中打开 VS Code 编辑器,并在 ~/project
目录下创建一个名为 dictionary_keys.py
的新文件。
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
现在,让我们探索如何访问这个字典的键。Python 为此提供了 .keys()
方法。将以下代码添加到你的 dictionary_keys.py
文件中:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
keys = my_dict.keys()
print(keys)
保存文件,并在终端中使用以下命令运行脚本:
python dictionary_keys.py
你应该会看到以下输出:
dict_keys(['name', 'age', 'city'])
输出显示了一个“dict_keys”对象,它是一个视图对象,显示了字典中所有键的列表。
要将这个视图对象转换为列表,你可以使用 list()
函数。按如下方式修改你的 dictionary_keys.py
文件:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
keys = list(my_dict.keys())
print(keys)
保存文件并再次运行脚本:
python dictionary_keys.py
现在,输出将是一个键的列表:
['name', 'age', 'city']
你现在可以遍历这个列表并对每个键执行操作。例如,你可以单独打印每个键:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
keys = list(my_dict.keys())
for key in keys:
print(key)
保存文件并运行脚本:
python dictionary_keys.py
输出将是:
name
age
city
这展示了如何在 Python 中访问和遍历字典的键。理解这个概念对于有效地操作和从字典中提取信息至关重要。
in
运算符在这一步中,你将学习如何使用 in
运算符来检查字典中是否存在某个键。in
运算符是一种强大的工具,可用于判断键是否存在,且不会引发错误。
让我们继续使用上一步中创建的字典。如果你没有 dictionary_keys.py
文件,请在 ~/project
目录下再次创建该文件,并包含以下内容:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
现在,让我们使用 in
运算符来检查字典中是否存在特定的键。将以下代码添加到你的 dictionary_keys.py
文件中:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
if "name" in my_dict:
print("The key 'name' exists in the dictionary.")
else:
print("The key 'name' does not exist in the dictionary.")
保存文件,并在终端中使用以下命令运行脚本:
python dictionary_keys.py
你应该会看到以下输出:
The key 'name' exists in the dictionary.
这证实了键 "name"
存在于字典中。
现在,让我们检查一个不存在的键。按如下方式修改你的 dictionary_keys.py
文件:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
if "country" in my_dict:
print("The key 'country' exists in the dictionary.")
else:
print("The key 'country' does not exist in the dictionary.")
保存文件并再次运行脚本:
python dictionary_keys.py
输出将是:
The key 'country' does not exist in the dictionary.
这展示了如何使用 in
运算符来检查字典中键的存在性。在尝试访问键的值之前,这是一种安全且高效的判断键是否存在的方法。
如果键存在,in
运算符返回 True
,否则返回 False
。你可以在条件语句或其他逻辑操作中使用这个布尔值。
get()
方法进行检查在这一步中,你将学习如何使用 get()
方法安全地访问字典的值。get()
方法提供了一种检索与键关联的值的方式,并且允许你指定一个默认值,以便在键不存在时返回。这可以防止你的程序因 KeyError
异常而崩溃。
让我们继续使用前几步中创建的字典。如果你没有 dictionary_keys.py
文件,请在 ~/project
目录下再次创建该文件,并包含以下内容:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
现在,让我们使用 get()
方法来检索与键 "name"
关联的值。将以下代码添加到你的 dictionary_keys.py
文件中:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
name = my_dict.get("name")
print(name)
保存文件,并在终端中使用以下命令运行脚本:
python dictionary_keys.py
你应该会看到以下输出:
Alice
get()
方法成功检索到了与键 "name"
关联的值。
现在,让我们尝试检索与一个不存在的键(如 "country"
)关联的值。按如下方式修改你的 dictionary_keys.py
文件:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
country = my_dict.get("country")
print(country)
保存文件并再次运行脚本:
python dictionary_keys.py
输出将是:
None
默认情况下,如果键不存在,get()
方法会返回 None
。这可以防止引发 KeyError
。
你还可以指定一个默认值,以便在键不存在时返回。按如下方式修改你的 dictionary_keys.py
文件:
## Content of dictionary_keys.py
my_dict = {
"name": "Alice",
"age": 30,
"city": "New York"
}
country = my_dict.get("country", "Unknown")
print(country)
保存文件并运行脚本:
python dictionary_keys.py
输出将是:
Unknown
在这种情况下,由于键 "country"
不存在于字典中,get()
方法返回了我们指定的默认值 "Unknown"
。
在处理字典时,使用 get()
方法是一种最佳实践,因为它允许你优雅地处理键可能不存在的情况,避免错误并使你的代码更健壮。
在本次实验中,你首先探索了如何在 Python 中访问字典的键。你学习了如何创建字典,并使用 .keys()
方法来获取一个包含字典所有键的视图对象。
接着,你学习了如何使用 list()
函数将这个视图对象转换为列表,这样你就可以遍历这些键并对它们执行操作,例如逐个打印每个键。