ck3*_*3mp 6 python json python-3.x jmespath
我正在尝试使用 JMESPath 的 Python 库从大型 JSON 文件中提取信息,这里有一个简单得多的示例:
{
"high_name":"test",
"sections":[
{
"name":"section1",
"item":"string1"
},
{
"name":"section2",
"item":"string2",
"items_sub":[
{
"item":"deeper string1"
}
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试获得这样的输出:
{
"high_name":"test",
"sections":[
{
"name":"section1",
"items":[
"string1"
]
},
{
"name":"section2",
"items":[
"string1",
"deeper string1"
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
更深的字符串可以是 1 到 3 层深,具体取决于部分的类型。我需要搜索键来获取所有匹配的item名称。
我已经使用 jsonpath-rw-ext 成功完成了此操作,但想知道是否可以使用 JMESPath 来消除对两个库的依赖?
我似乎无法找到一种方法来搜索所有子键,无论它们在 JMESPath 中的级别如何。
JSONPATH-RW-EXT 的工作字符串:
$.sections[*]..item
Run Code Online (Sandbox Code Playgroud)
使用 JMESPath 的最佳尝试(不起作用):
sections[*].*.item
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
576 次 |
| 最近记录: |