我有一个JSON字符串,我试图使用Python从中提取属性值,如下所示:
def extract_property(node, to_extract):
data, stat = zk.get(node)
jsonString = data.decode("utf-8")
jStr = json.loads(jsonString)
return jStr[to_extract]
现在有可能,我试图提取的属性值在JSON字符串中不存在,因此它将失败。如果JSON字符串中根本不存在属性,如何返回空字符串。在
如果属性不存在,此行可能失败。在
^{pr2}$
和Zaur一样,我也会建议}可能是或者可能不是a}将在python2或3中工作)。如果这就是问题所在,那么以下内容可能涵盖更广泛的情况:
jStr.get(to_extract, '')
,但我推测OP对此的反对意见是{dict
(如果它是dict
,那么{{cdi>简单地使用}:
有关详细信息,请参见https://docs.python.org/3/library/stdtypes.html#dict.get。在
升级版:
感谢@jez指出,
^{pr2}$jStr
不能保证是字典。然而,JSON解析的结果是已知的:如果它不是字典,那么它就是一个列表、数字或字符串。在这种情况下,将其包装到一个类型检查例程中,例如:相关问题 更多 >
编程相关推荐