在 Python 中获取字典中的第一个键
Get the first Key in a dictionary in Python
要获取字典中的第一个键:
- 使用该
iter()
函数获取字典键的迭代器。 - 使用该
next()
函数获取字典中的第一个键。 - 例如,
first_key = next(iter(my_dict))
。
主程序
my_dict = { 'id': 1, 'name': 'Alice', 'country': 'Austria' } # ✅ get first key in dictionary using iterator first_key = next(iter(my_dict)) print(first_key) # 👉️ 'id' first_key_value = next(iter(my_dict.items())) print(first_key_value) # 👉️ ('id', 1) print(my_dict[first_key]) # 👉️ 1 # ------------------------------------------------- # ✅ get first key in dictionary using list() class first_key = list(my_dict)[0] print(first_key) # 👉️ 'id'
我们使用iter()
函数从字典的键中获取迭代器对象。
主程序
my_dict = { 'id': 1, 'name': 'Alice', 'country': 'Austria' } # ✅ get first key in dictionary using iterator # 👇️ <dict_keyiterator object at 0x7f2a474e7bf0> print(iter(my_dict)) print(next(iter(my_dict))) # 👉️ 'id'
next函数从迭代器返回下一个项目。
您可以提供一个默认值,如果字典为空则返回该默认值。
主程序
my_dict = {} print(iter(my_dict)) print(next(iter(my_dict), 'default')) # 👉️ 'default'
如果字典为空且未提供默认值,StopIteration
则会引发异常。
如果您需要获取字典中的第一个键值对,请使用该
dict.items()
方法。
主程序
my_dict = { 'id': 1, 'name': 'Alice', 'country': 'Austria' } first_key = next(iter(my_dict)) print(first_key) # 👉️ 'id' first_key_value = next(iter(my_dict.items())) print(first_key_value) # 👉️ ('id', 1) print(first_key_value[0]) # 👉️ 'id' print(first_key_value[1]) # 👉️ 1
dict.items方法返回字典
项((键,值)对)的新视图。
主程序
my_dict = { 'id': 1, 'name': 'Alice', 'country': 'Austria' } # 👇️ dict_items([('id', 1), ('name', 'Alice'), ('country', 'Austria')]) print(my_dict.items())
当您只需要获取字典中的第一个键时,这种方法非常有效。
或者,您可以使用list()
该类。
使用 list() 获取字典中的第一个 Key
使用list()
该类获取字典中的第一个键,例如
first_key = list(my_dict)[0]
. 该类list
将字典转换为键列表,我们可以在其中访问索引处的元素0
以获取第一个键。
主程序
my_dict = { 'id': 1, 'name': 'Alice', 'country': 'Austria' } first_key = list(my_dict)[0] print(first_key) # 👉️ 'id' print(my_dict[first_key]) # 👉️ 1
我们使用list()
该类来获取字典中的第一个键。
主程序
my_dict = { 'id': 1, 'name': 'Alice', 'country': 'Austria' } print(list(my_dict)) # 👉️ ['id', 'name', 'country']
最后一步是访问 index 处的列表项0
。
主程序
my_dict = { 'id': 1, 'name': 'Alice', 'country': 'Austria' } first_key = list(my_dict)[0] print(first_key) # 👉️ 'id' print(my_dict[first_key]) # 👉️ 1
从 Python 3.7 开始,标准dict
类保证保留键的顺序。
Python 索引是从零开始的,因此列表中的第一项的索引为,最后一项的索引为或。
0
-1
len(my_list) - 1
或者,您可以使用该dict.keys()
方法。
要获取字典中的第一个键:
- 使用该
dict.keys()
方法获取字典键的视图。 - 使用
list()
该类将视图转换为列表。 - 访问索引处的列表项
0
以获取第一个键。
主程序
my_dict = { 'id': 1, 'name': 'Alice', 'country': 'Austria' } first_key = list(my_dict.keys())[0] print(first_key) # 👉️ 'id' print(my_dict[first_key]) # 👉️ 1
dict.keys方法返回字典键的
新视图。
主程序
my_dict = { 'id': 1, 'name': 'Alice', 'country': 'Austria' } # 👇️ dict_keys(['id', 'name', 'country']) print(my_dict.keys()) # 👇️ ['id', 'name', 'country'] print(list(my_dict.keys()))
该dict_keys
对象不可订阅,因此我们无法在特定索引处访问它。
我们可以将对象转换为列表来解决这个问题。
主程序
my_dict = { 'id': 1, 'name': 'Alice', 'country': 'Austria' } first_key = list(my_dict.keys())[0] print(first_key) # 👉️ 'id' print(my_dict[first_key]) # 👉️ 1
在这种情况下您不必使用该
my_dict.keys()
方法,因为您只需将字典传递给list()
类即可获取其键列表。但是,您会经常看到这种方法被用于获取字典中的第一个键。
如果您使用早于 Python 3.7 的版本,则不会保留字典中键的顺序,您必须使用OrderedDict
.
主程序
from collections import OrderedDict my_dict = OrderedDict( [('id', 1), ('name', 'Alice'), ('country', 'Austria')] ) first_key = list(my_dict)[0] print(first_key) # 👉️ 'id' print(my_dict[first_key]) # 👉️ 1
该类list()
还可用于将 an 的键转换为OrderedDict
列表。
主程序
from collections import OrderedDict my_dict = OrderedDict( [('id', 1), ('name', 'Alice'), ('country', 'Austria')] ) print(list(my_dict)) # 👉️ ['id', 'name', 'country']
最后一步是访问索引处的键0
以获取第一个键。