在 Python 中按索引访问字典键

在 Python 中通过索引访问字典键

Access a dictionary key by index in Python

使用list()该类按索引访问字典键,例如
key = list(my_dict)[0]. 该类list()会将字典转换为键列表,使我们能够访问特定索引处的键。

主程序
my_dict = { 'id': 1, 'name': 'Bobbyhadz', 'age': 30, } # ✅ access dictionary key by index key = list(my_dict)[1] print(key) # 👉️ name # ✅ access dictionary value by index value = list(my_dict.values())[1] print(value) # 👉️ Bobbyhadz # ------------------------------------- # ✅ find index of key in dictionary index = None if 'name' in my_dict: index = list(my_dict).index('name') print(index) # 👉️ 1

我们使用list()该类将字典转换为键列表。

主程序
my_dict = { 'id': 1, 'name': 'Bobbyhadz', 'age': 30, } print(list(my_dict)) # 👉️ ['id', 'name', 'age'] print(list(my_dict.keys())) # 👉️ ['id', 'name', 'age']

我们也可以使用该dict.keys()方法来更明确。

dict.keys方法返回字典键的
新视图。

最后一步是访问特定索引处的键列表。

主程序
my_dict = { 'id': 1, 'name': 'Bobbyhadz', 'age': 30, } key = list(my_dict)[1] print(key) # 👉️ name value = list(my_dict.values())[1] print(value) # 👉️ Bobbyhadz
Python 索引是从零开始的,因此列表中的第一项的索引为,最后一项的索引为 0-1 len(my_list) - 1

list.index()如果您需要获取字典中特定键的索引,请使用该方法。

主程序
my_dict = { 'id': 1, 'name': 'Bobbyhadz', 'age': 30, } index = None if 'name' in my_dict: index = list(my_dict).index('name') print(index) # 👉️ 1 key = list(my_dict)[index] print(key) # 👉️ name value = list(my_dict.values())[index] print(value) # 👉️ Bobbyhadz
list.index()方法返回其值等于提供的参数的第一个项目的索引。

ValueError如果列表中没有这样的项目,该方法将引发一个。

我们使用if语句来检查字典中是否存在键,因此该
list.index()方法永远不会抛出ValueError.

从 Python 3.7 开始,标准dict类保证保留键的插入顺序。

如果您使用旧版本,请改用OrderedDict该类。

主程序
from collections import OrderedDict my_dict = OrderedDict( [('id', 1), ('name', 'Bobbyhadz'), ('age', 30)] ) key = list(my_dict)[1] print(key) # 👉️ name value = list(my_dict.values())[1] print(value) # 👉️ Bobbyhadz index = None if 'name' in my_dict: index = list(my_dict).index('name') print(index) # 👉️ 1

该类list()还可用于将 an 的键转换为OrderedDict列表。

请注意,OrderedDict仅当您使用早于 Python 3.7 的版本时才需要使用该类。

否则,请使用本机dict类,因为它会保留插入顺序。

发表评论