在 Python 中获取字典中的第一个键

在 Python 中获取字典中的第一个键

Get the first Key in a dictionary in Python

要获取字典中的第一个键:

  1. 使用该iter()函数获取字典键的迭代器。
  2. 使用该next()函数获取字典中的第一个键。
  3. 例如,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()方法。

要获取字典中的第一个键:

  1. 使用该dict.keys()方法获取字典键的视图。
  2. 使用list()该类将视图转换为列表。
  3. 访问索引处的列表项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以获取第一个键。

发表评论