使用Pythonjmespath
库,如何区分“匹配表达式,值为None
”和“匹配表达式失败”?
该jmespath.search
函数None
在两种不同的情况下返回:
>>> import jmespath
>>> foo = {'bar': {'lorem': 13, 'ipsum': None}}
>>> repr(jmespath.search('bar.lorem', foo))
'13'
>>> repr(jmespath.search('bar.ipsum', foo)) # Path matches, value None
'None'
>>> repr(jmespath.search('dolor', foo)) # Path does not match
'None'
JMESPath 搜索 API 似乎在这两种不同的情况下返回None
。调用者如何知道它们之间的区别?