Python列表理解包括dict上的索引

我有一个列表类型的字典

l = [
  {
     "k1": "v1",
  },
  {
     "k2": "v2",
  }
]

我想用每个条目的索引更新这个列表,就像这样

[
  {
     "index": 0,
     "k1": "v1",
  },
  {
     "index": 1,
     "k2": "v2",
  }
]

我如何使用列表理解来做到这一点?

回答

您可以将其设置i为计数器enumeratej字典,您可以将其解压缩到新字典中。

l2 = [{'index' : i, **j} for i,j in enumerate(l)]
print(l2)

或者作为@Martijn Pieters,python 3.9 解决方案:

[{"index": i} & j for i, j in enumerate(l)]

  • 在 Python 3.9 及更高版本中,您还可以使用 `&` 运算符来组合字典:`[{"index": i} & j for i, j in enumerate(l)]`。_这里_不是一个大胜利,但需要考虑的事情。

以上是Python列表理解包括dict上的索引的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>