使用jmespath更改JSON密钥

使用jmespath更改JSON密钥,json,jmespath,Json,Jmespath,是否有任何理由使用jmespath将JSON密钥更改或转换为其他内容 例如,如果我有这样的JSON: [ {"topic_id": 123, "name": "Topic 1"}, {"topic_id": 234, "name": "Topic 2"} ] [ {"id": 123, "name": "Topic 1"}, {"id": 234, "name": "Topic 2"} ] 如何将“topic_id”更改为简单的“id”?所以结果是这样的: [ {"topic_id": 12

是否有任何理由使用jmespath将JSON密钥更改或转换为其他内容

例如,如果我有这样的JSON:

[
{"topic_id": 123, "name": "Topic 1"},
{"topic_id": 234, "name": "Topic 2"}
]
[
{"id": 123, "name": "Topic 1"},
{"id": 234, "name": "Topic 2"}
]
如何将“topic_id”更改为简单的“id”?所以结果是这样的:

[
{"topic_id": 123, "name": "Topic 1"},
{"topic_id": 234, "name": "Topic 2"}
]
[
{"id": 123, "name": "Topic 1"},
{"id": 234, "name": "Topic 2"}
]
我知道这可以用任何语言来完成,但是每种语言的解决方案都会有所不同。我想要一个使用jmespath的不可知论解决方案


根据我在jmespath文档中读到的内容,它可以通过过滤现有的JSON来创建新的JSON。在我的案例中可以使用相同的技术吗?

在进行一些测试后,我发现解决方案是使用以下表达式:

[].{id: topic_id, name: name}