このような json ファイルがあります。次に、flask-webapp
の文字列そのものであるキー flask-webapp
の名前を抽出する必要があります。それ? Object.keys() を使用して、RuntimeSource、DeploymentId、Serial の 3 つのキーを取得します。
私の説明は少し複雑な気がしますが、問題を要約すると、この JSON ファイルの最初の Key-Value の Key-Value の次の層のキーを抽出する方法です (もっと複雑なようです。 .. 読んでいただければ幸いです) わかりました)
Python または JavaScript を使用して実装できます
漂亮男人2017-06-12 09:24:48
リーリー
これは処理が必要なデータです。主題の質問は、次の質問の適切なサブセットと見なされるべきです
(問題は "flask-webapp"
が得られる限りです)
オブジェクトからオブジェクトのすべてのキー名を抽出し、配列を形成します
このプロセスを一時的に 铺平 flat
と呼びます。この解決策を得るために、ここでもこの関数を実装しました。
Object.keys
列挙可能な第 1 レベルのオブジェクト属性キー名を取得する機能
次のような機能を使用して再帰関数を作成します:
リーリー
具体的には、flask-webapp
このキー名が必要です:
JSON.stringify
可以把对象转化成 JSON字符串
たとえば、JSON.stringify(o)
で結果を取得できますJSON.stringify(o)
可以得到结果"{"RuntimeSources":{"flask-webapp":{"eb-flask1.3":{"s3url":""}}},"DeploymentId":4,"Serial":4}"
観察を続けると、次のことがわかります:
の前はキー名です
JSON
中,:
冒号
JSON 要素を配列に構築し、
ツール機能
リーリー
flat
リーリー
上記の意味:{
}
:
,
最初のreduceは前後にスペースを追加します対応コード
リーリー
結果は次のとおりです:
のオリジナルstr
"{"RuntimeSources":{"flask-webapp":{"eb-flask1.3":{"s3url":""}}},"DeploymentId":4,"Serial":4}"
加工後は
になります
" { "RuntimeSources" : { "flask-webapp" : { "eb-flask1.3" : { "s3url" : "" } } } , "DeploymentId" : 4 , "Serial" : 4 } "
A
中間結果を取得する
A
こちらで対応させていただきます
対応コード:
リーリー
A
转成中间数组 B
を中間配列に変換
B
観察
の前はキー名です
JSON
中,:
冒号
それに応じて最終的なreduceを記述します:
🎜
PHP中文网2017-06-12 09:24:48
Pythonで実装したい場合、dictはハッシュテーブル構造であり、データが入力された後、特性に従ってハッシュされ、独自の順序を持っています
キーの名前を指定できれば。キーの名前を指定できない場合でも取得できます