親キーを組み合わせて各値の一意の名前を生成するRESTサービスから返された、次のJSONがあります。例えば。 name+phone+address+city+name
,name+phone+address+city+population+skilled+male
など。各JSON値に一意の名前を生成する方法
{
"name": "name",
"phone": "343444444",
"address": {
"lat": 23.444,
"lng": 34.3322,
"city":{
"name": "city name",
"population": {
"skilled": {
"male": 2,
"female": 4
},
"uneducated": {
"male": 20,
"femail": 4
}
}
}
},
"email": "email",
"education": "phd"
}
JSONツリーの親から始まるすべてのキー名を結合したいと思います。ここで
は、私はこのコードは、キーを印刷するだけで、現在の親ノードから開始される
class TestJson
def walk_through(self, json_object):
for k, v in json_object.items():
self.x_path = self.x_path + k
if type(v) is dict:
self.walk_through(v)
else:
print(self.x_path)
self.x_path = ""
をやっているものです。私はすべてのキーをjsonのルートまで結合したい。
キーの順序は必ずしも同じであるとは限りません。 –
@gre_gorは注文を同じに保つ方法がありますか? – amjad