{
"Steps": [
{
"Status": {
"State": "PENDING",
"StateChangeReason": {}
},
"ActionOnFailure": "CANCEL_AND_WAIT",
"Name": "ABCD"
},
{
"Status": {
"State": "COMPLETED",
"StateChangeReason": {}
},
"ActionOnFailure": "CANCEL_AND_WAIT",
"Name": "KLMN"
},
{
"Status": {
"Timeline": {
"CreationDateTime": 1469815629.4289999
},
"State": "PENDING",
"StateChangeReason": {}
},
"ActionOnFailure": "TERMINATE_CLUSTER",
"Name": "XYZ"
}
]
}
名前= "KLMN"のステップのステータスが完了しているかどうかをチェックしたいと思います。どのように私はそれをPythonで行うことができます。他のフィールドの値に基づいてPythonのjson入力から情報を抽出する
のpython -c 'インポートJSON、SYS; OBJ = json.load(sys.stdinを); "ステップ"] OBJを印刷....'
方法べきIコード印刷データは、あなたのデータ構造である
[step['Status']['State'] for step in data['Steps'] if step['Name']=='KLMN']
:あなたはこれを入力することができます
すでにJSONをPythonオブジェクトにロードするコードがあります。あなたがしなければならないことは、そのリストを反復し、そのリスト内のどの辞書があなたの希望する名前と一致するかを見つけることだけです。 JSONの読み込み部分はすでに解決済みです。これは*ちょうどPythonのリスト付き辞書問題です*。 –