在 Python 中,字典用于存储键值对,传统上,这些字典是无序的。然而,随着 Python 3.7 的引入,字典获得了保留顺序的功能,其行为与 OrderedDicts 类似。
虽然此功能消除了使用整数索引(例如,colors[0])直接索引字典的能力,它开辟了检索字典中第一个或第 n 个键的替代方法。
要获取字典中的第一个键,您可以将字典键到列表并访问第一个元素:
<code class="python">first_key = list(colors)[0]</code>
同样,要获取第一个值,请将字典值转换为列表并访问第一个元素:
<code class="python">first_val = list(colors.values())[0]</code>
如果您不想创建列表,可以使用辅助函数来迭代字典键并返回第一个键:
<code class="python">def get_first_key(dictionary): for key in dictionary: return key raise IndexError</code>
使用此函数,您可以按如下方式检索第一个密钥:
<code class="python">first_key = get_first_key(colors)</code>
要检索第 n 个密钥,您可以使用修改版本get_first_key 函数的:
<code class="python">def get_nth_key(dictionary, n=0): if n < 0: n += len(dictionary) for i, key in enumerate(dictionary.keys()): if i == n: return key raise IndexError("dictionary index out of range") </code>
使用此函数,您可以检索第 n 个密钥:
<code class="python">first_key = get_nth_key(colors, n=1) # retrieve the second key</code>
请注意,这些方法依赖于迭代字典,这可以对于大型字典来说效率很低。
以上是如何从保留顺序的 Python 字典中检索键的详细内容。更多信息请关注PHP中文网其他相关文章!