{
"id": "9",
"children": [{
"id": "8",
"children": [{
"id": "7",
"children": [{
"id": "6",
"children": [
{
"id": "0",
"type": "isPathForward"
},
{
"id": "2",
"children": [{
"id": "1",
"type": "maze_moveForward"
}],
"type": "DO"
},
{
"id": "5",
"children": [{
"id": "4",
"children": [{
"id": "3",
"type": "turnLeft"
}],
"type": "maze_turn"
}],
"type": "ELSE"
}
],
"type": "maze_ifElse"
}],
"type": "DO"
}],
"type": "maze_forever"
}],
"type": "program"
}
上記の有効なJSONは基本的にAST(抽象構文木)であり、上記のJSONのために正確に下記のような2続いノード)左の子、その後、3)右の子抽象構文木を格納しているJSONから情報を抽出する際に助けが必要
:
Program
maze_forever
DO
maze_ifElse
isPathforward
Do
maze_moveForward
Else
maze_turn
turn_Left
私はPythonで発電機を使用してみましたJSONで働いていないが、順序がで失われますそのプロセスはdictに変換されます。
これに対してPythonの実装を記述できますか?
UPDATE !!!!
これまでのところ、私が試してみました:(JSON上記)
輸入JSON json_string = json.loads
when i type :
for i in json_string:
... print(i)
...
OUTPUT
type
id
children
を、私はまた、上記
import pandas as pd
d=pd.read_json('{ "id": "9", "children": [{ "id": "8", "children": [{ "id": "7", "children": [{ "id": "6", "children": [ { "id": "0", "type": "isPathForward" }, { "id": "2", "children": [{ "id": "1", "type": "maze_moveForward" }], "type": "DO" }, { "id": "5", "children": [{ "id": "4", "children": [{ "id": "3", "type": "turnLeft" }], "type": "maze_turn" }], "type": "ELSE" } ], "type": "maze_ifElse" }], "type": "DO" }], "type": "maze_forever" }], "type": "program"}')
>>> d
output :
children id type
0 {'type': 'maze_forever', 'id': '8', 'children'... 9 program
両方のケースを試してみました:
私はすべての子供が持つように再帰的に子供の中に入る方法を知らない内部に1人以上の子供。私が検索したほとんどの答えは、上記のJSONと同じようにネストされたJSONについて説明しません。
注文は失われず、決してそこにはありませんでした。 JSONオブジェクトは保証されていません。順序を気にする場合は、配列を使用するか、反復処理時に適切なキーをソートします。 – jonrsharpe
あなたのためにいくつかのコードを書きたいと思うようです。多くのユーザーは、苦労しているコーダーのコードを作成したいと考えていますが、通常、ポスターが既に問題を解決しようとしているときにのみ役立ちます。この努力を実証する良い方法は、これまでに書いたコード、サンプル入力(もしあれば)、期待される出力、実際に得られる出力(出力、トレースバックなど)を含めることです。あなたが提供する詳細があれば、受け取る可能性のある回答が増えます。 [FAQ](http://stackoverflow.com/tour)と[How to Ask](http://stackoverflow.com/questions/how-to-ask)を確認してください。 – TigerhawkT3
上記のjsonはAbstract Syntax Treeを表しています。上記のように情報を抽出する方法があれば非常に役に立ちます.thanks! –