python中json的get方法_.get方法对于嵌套的json没有

我有一个大文件,每行都包含有效的嵌套json,每个json看起来都像(实际数据要大得多,因此json的这种和平性仅作为说明):{"location":{"town":"Rome","groupe":"Advanced",

"school":{"SchoolGroupe":"TrowMet", "SchoolName":"VeronM"}},

"id":"145",

"Mother":{"MotherName":"Helen","MotherAge":"46"},"NGlobalNote":2,

"Father":{"FatherName":"Peter","FatherAge":"51"},

"Study":[{

"Teacher":["MrCrock","MrDaniel"],

"Field":{"Master1":["Marketing", "Politics", "Philosophy"],

"Master2":["Economics", "Management"], "ExamCode": "1256"}

}],

"season":["summer","spring"]}

我需要解析这个文件,以便从每个json中只提取一些键值,以获得如下所示的dataframe:

^{pr2}$

def extract_data(data):

""" convert 1 json dict to records for import"""

dummy = {}

jfile = json.loads(data.strip())

return (

jfile.get('Study', dummy).get('Field', np.nan).get('Master1',np.nan),

jfile.get('location', dummy).get('groupe', np.nan))

对于这行jfile.get('Study', dummy).get('Field', np.nan).get('Master1', np.nan),它向我抛出一个错误:AttributeError: 'list' object has no attribute 'get'

显然,这是因为"Study"的值不是字典,也不是列表,而是一个有效的json!我该如何处理这个问题?是否存在类似.get的方法,但对于json?我想还有另一个选择:解码这个json,然后用.get解析它,但是问题是它在另一个json的核心中,所以我不知道如何解码它!在

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值