私はPythonで複雑な入れ子になったjsonを正規化しようとしていますが、すべてのオブジェクトを解析できません。Pythonで複雑な入れ子になったjsonを正規化する方法は?
私はこのページのコードを参照しています。 https://medium.com/@amirziai/flattening-json-objects-in-python-f5343c794b10
sample_object = {'Name':'John', 'Location':{'City':'Los Angeles','State':'CA'}, 'hobbies':['Music', 'Running']}
def flatten_json(y):
out = {}
def flatten(x, name=''):
if type(x) is dict:
for a in x:
flatten(x[a], name + a + '_')
elif type(x) is list:
for a in x:
flatten(a, name)
else:
out[name[:-1]] = x
flatten(y)
return out
flat = flatten_json(sample_object)
print json_normalize(flat)
返信結果:
Name | Location_City | Location_State | Hobbies
-----+---------------+----------------+--------
John | Los Angeles | CA | Running
期待される結果:
Name | Location_City | Location_State | Hobbies
-----+---------------+----------------+--------
John | Los Angeles | CA | Running
John | Los Angeles | CA | Music