jmespathjson解析
(2022-11-16 20:52:21)
标签:
json |
分类: python/深度学习 |
import jmespath
data = {
"people": [
]
#ans = jmespath.search('people[0].[name, state.name]',
data)
#ans = jmespath.search('people[].[name, state.name]',
data)
# ans = jmespath.search('people[].{new_name: name, state_name:
state.name}', data)
ans = jmespath.search('people[0].name', data)
# print(ans)
print(jmespath.search('people.*', data))
# https://zhuanlan.zhihu.com/p/458112358
data = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# 所有元素
print(jmespath.search('[]', data) ) # [1, 2, 3, 4, 5, 6, 7, 8,
9]
print(jmespath.search('[*]', data) ) # [1, 2, 3, 4, 5, 6, 7,
8, 9]
jmespath.search('[:]', data) # [1, 2, 3, 4,
5, 6, 7, 8, 9]
# 部分数据
print(jmespath.search('[5:8]', data) ) # [6, 7, 8]
jmespath.search('[::-1]', data) # [9, 8, 7,
6, 5, 4, 3, 2, 1]
jmespath.search('[8:1:-2]', data) # [9, 7,
5, 3]
data = {"a": "foo", "b": "bar", "c": "baz"}
print(jmespath.search('a', data)) #
"foo"
data = {"a": {"b": {"c": {"d": "value"}}}}
print(jmespath.search('a.b.c.d', data) ) # "value"
data = {"a": {
}}
print(jmespath.search('a.b.c[0].d[1][0]', data) ) # 1
data = {
}
print(jmespath.search('ops.*.numArgs',
data)) # [2, 3]
data = {
}
jmespath.search("machines[?state=='running'].name",
data) # ['a', 'b']
data = {
}
print(jmespath.search("people[?first=='James'] ", data) ) #
[{'first': 'James', 'last': 'd'}, {'first': 'James', 'last':
'e'}]
print(jmespath.search("people[?first=='James'] | [?last=='e']
", data) ) # [{'first': 'James', 'last': 'e'}]
print(jmespath.search("people[?first=='James'] | [?last=='e']
| [0]", data) ) # {'first': 'James', 'last': 'e'}
前一篇:Excel分列与同一列相同处理
后一篇:html菜单的常显