2016-10-24 41 views
1

使用the Python jmespath library,如何區分「匹配表達式,值是None」還是「匹配表達式失敗」?檢測JMESPath中的匹配失敗

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。來電者如何知道它們之間的區別?

回答