使用类似json的路径表示法访问嵌套的dict和list。
jpath的Python项目详细描述
使用类似json的路径表示法访问嵌套的dict和list。
注意,这段代码是为python 3编写的。
符号如下:
You can just write the names of components in your path like you would in javascript:
foo.bar.baz
To access arrays or names with spaces in them, use the ‘[]’ notation. You can use negative indices with arrays to count from the end.
[“foo”][“bar”][“baz”] array[-1].attr [3]
You can use the wildcard character ‘*’ to iterate over all elements:
foo.*.baz [“foo”][*][“baz”]
This may return more or less than a single element. Use get to get the first one, and get_all to get a list of all possibilities. If you want to skip any number of elements in path, use two dots ‘..’:
foo..baz
You can slice the arrays just like in python:
array[1:-1:2]
Finally, you can filter the elements:
foo(bar.baz=true) foo.bar(baz>0).baz foo(bar=”yawn”).bar
At the moment only =, >, <, >=, <= and != operators are available, and you can only use them with strings, integers and boolean values.
下面这段代码是用stx写的。