如何嵌套python字典的类的查询?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (147)

是否有方法为嵌套python字典定义XPath类型查询。

就像这样:

foo = {
  'spam':'eggs',
  'morefoo': {
               'bar':'soap',
               'morebar': {'bacon' : 'foobar'}
              }
   }

print( foo.select("/morefoo/morebar") )

>> {'bacon' : 'foobar'}

我还需要选择嵌套列表。

提问于
用户回答回答于

你可能会用:

def xpath_get(mydict, path):
    elem = mydict
    try:
        for x in path.strip("/").split("/"):
            elem = elem.get(x)
    except:
        pass

    return elem
用户回答回答于

试试:

from jsonpath_rw import parse

print( parse('$.morefoo.morebar').find(foo) )

第二个:

print( parse("$.morefoo[0].morebar.bacon").find(foo) )

扫码关注云+社区

领取腾讯云代金券