如何从第二项迭代python dict

如何从第二项迭代python dict,python,for-loop,Python,For Loop,如何直接从第二项开始python迭代 d = { 'name': 'ABC', 'age': '23', 'email': 'abc@example.com' } 我尝试了以下代码 first_item = next(iter(d)) for k, v in d.items(): print(k, v) 期望值: 年龄:23岁 电邮:abc@example.com 实际值: 名称:ABC 年龄:23岁 电邮:abc@example.com 期待基于“Python 3”

如何直接从第二项开始python迭代

d = {
  'name': 'ABC',
  'age': '23',
  'email': 'abc@example.com'  
}
我尝试了以下代码

first_item = next(iter(d))
for k, v in d.items():
    print(k, v)
期望值:

年龄:23岁
电邮:abc@example.com

实际值:

名称:ABC
年龄:23岁
电邮:abc@example.com

期待基于“Python 3”版本的解决方案

谢谢,

试试这个:

for i, v in enumerate(d.items()):
    if i == 0:
        pass

    else:
        print({v[0]:v[1]})
items=iter(d.items())
第一项=下一项(项目)
对于项目中的k、v:
印刷品(k,v)

但是使用Python order dict时要小心,最好按键名跳过:

您不是在修改字典,而是在构建一个新的迭代器并提取第一个(可能是任意项)。对于早期的python版本(字典没有排序),您不应该依赖于
'name'
作为第一个键。相反,您可以
.pop
相关项目:

>>> d = {
...   'name': 'ABC',
...   'age': '23',
...   'email': 'abc@example.com'  
... }
>>> name = d.pop('name')
>>> name
'ABC'
>>> for k, v in d.items():
...     print(k, v)
... 
age 23
email abc@example.com

只需应用列表切片即可跳过第一个元素

但首先,您需要转换列表对象中的d.items(),因为它返回一个dict_items对象


只需跳过
名称
,因为python中的d没有排序。
如果您使用集合中的
OrderedDict
,您可以使用d.items()[1:]。

这不是一个最佳解决方案,但它应该满足您的需求

for k,v in d.iteritems():
   if(k=="name"):
       continue
   print(k,v)

检查dict的第一个元素的键名是否为常量,如何?如果k==“name”,您可以在for循环中简单地“continue”。或者有必要跳过dict的第一个元素吗?Python dict不支持元素顺序,因此没有第二项。因此,您是的,按名称跳过元素听起来是一个更好的解决方案。@bereal Python在gurantee insert order上的3.7中写道…@PatrickArtner哇,真的。dict文本也支持这一点吗?您应该添加一些解释。
for k,v in d.iteritems():
   if(k=="name"):
       continue
   print(k,v)