You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python 3中从字典的第二个元素开始迭代?

解决Python 3中跳过字典第一个键值对遍历的问题

首先,你当前的代码里,next(iter(d))只是单独取出了字典的第一个键,但并没有影响后续d.items()的迭代——因为每次调用d.items()都会生成一个全新的迭代器,所以循环还是会从第一个键值对开始遍历。

下面给你两种Python 3下可行的解决方案:

方法1:将键值对转为列表后切片(直观简单)

如果你使用的是Python 3.7及以上版本(此时字典会官方保留插入顺序),可以直接把d.items()转为列表,然后通过切片跳过第一个元素:

d = { 'name': 'ABC', 'age': '23', 'email': 'abc@example.com' }
# 转为列表后从索引1开始遍历
for k, v in list(d.items())[1:]:
    print(f"{k} : {v}")

输出结果:

age : 23
email : abc@example.com

方法2:使用迭代器跳过第一个元素(高效省内存)

如果字典很大,不想额外生成列表占用内存,可以直接操作items()的迭代器,先消耗第一个元素,再遍历剩余部分:

d = { 'name': 'ABC', 'age': '23', 'email': 'abc@example.com' }
# 获取items的迭代器
items_iterator = iter(d.items())
# 跳过第一个键值对
next(items_iterator)
# 遍历剩余的元素
for k, v in items_iterator:
    print(f"{k} : {v}")

这个方法和上面的输出结果一致,而且不需要创建整个键值对的列表,性能更优。

注意:Python 3.6及更早版本的字典是无序的,此时“第一个键值对”的概念不存在,所以上述方案仅适用于Python 3.7及以上版本(CPython 3.6虽然也能保留顺序,但属于实现细节,官方正式规范是3.7+)。

内容的提问来源于stack exchange,提问作者Jeyakumar Kasi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 06:35:12