一种快速处理不同格式嵌套数据的数据结构
querytree的Python项目详细描述
查询树
querytree是一种python数据结构,允许您快速访问深度嵌套的数据并以任何主要格式加载/保存它。
使用querytree,您不必检查(或创建)任何中间节点的esistance。
json_str="""{ "foo": { "bar": [ { "baz": { "n": 1 } }, { "baz": { "n": 1 }, "buz": { "k": 2 } } ] }}"""tree=Tree.parse_json(json_str)print(tree['foo.bar.0.baz.n'])# 1print(tree['foo.bar.1.buz.k'])# 2# accessing nonexistant locations isn't a problemprint(tree['foo.bar.0.buz.k'])# Noneprint(tree['something.else'])# None# assign valuestree['foo.bar.0.baz.n']=99tree['foo.foo']={"myvalue":"a value"}# save as any formatprint(tree.to_yaml())
输出:
foo:bar:-baz:n:99-baz:n:1buz:k:2foo:myvalue:a value