如何使用Python检查列表的JSON字符串?
我正在从一个JSON格式的文件中读取字符串,所有这些字符串可能略有不同。具体如下: 没有列表示例如何使用Python检查列表的JSON字符串?,json,python-3.x,Json,Python 3.x,我正在从一个JSON格式的文件中读取字符串,所有这些字符串可能略有不同。具体如下: 没有列表示例 [{"pricing-model":{"qualifier":{"and":{"all":{"equals":{"constant":... {"pricing-model":{"qualifier":{"or":{&q
[{"pricing-model":{"qualifier":{"and":{"all":{"equals":{"constant":...
{"pricing-model":{"qualifier":{"or":{"and":[{"all":{"equals":{"constant":...
列表示例
[{"pricing-model":{"qualifier":{"and":{"all":{"equals":{"constant":...
{"pricing-model":{"qualifier":{"or":{"and":[{"all":{"equals":{"constant":...
如果字符串包含列表,我需要以与没有列表不同的方式处理它
示例代码
with open('my.jason') as f:
data = json.load(f)
for item in data:
item = [item]
# Get dictionary items
item.get('pricing-model',{}).get('qualifier',{}).get('and',{}).get('all',{})\
.get('equals',{}).get('constant',{})
# Get list items
item.get('pricing-model',{}).get('qualifier',{}).get('and',[])
但是如何验证sting是否包含列表,以便运行正确的.get
if isinstance(item['pricing-model']['qualifier']['and'], list):
# Get list items
item.get('pricing-model',{}).get('qualifier',{}).get('and',[])
else:
item.get('pricing-model',{}).get('qualifier',{}).get('and',{}).get('all',{})\
.get('equals',{}).get('constant',{})