PythonでJSONを解析する際に問題が発生しましたが、今は止まっています。
問題は、JSONのエンティティが常に同じではないということです。 、PythonでJSONを解析する:空白のフィールド
for entrie in entries:
name =entrie['extensions']['name']
tel=entrie['extensions']['telephone']
を時々、JSONは、例えば、すべての「フィールド」を、持っていないため、問題が来る:私は例えば、JSONを通って移動することができる
"entries":[
{
"summary": "here is the sunnary",
"extensions": {
"coordinates":"coords",
"address":"address",
"name":"name"
"telephone":"123123"
"url":"www.blablablah"
},
}
]
:JSONのようなものですtelephone
フィールドが欠落していることがあります。そのため、の電話番号が存在しないため、スクリプトはKeyError
で失敗します。
私の質問:どのように空白を残して、このスクリプトを実行することができます電話がありません? 私は試しました:
if entrie['extensions']['telephone']:
tel=entrie['extensions']['telephone']
私はそうでもないと思います。
ニース、私はdefaultdict 'その後、より良い本が好き。ここ
は、必ずあなたの辞書が標準装備されて作るの一例です'__missing__'メソッドの中に潜在的なバグを捕まえるためのロジックを追加することができるからです。 'defaultdict'では、私は誤字を犯すとKeyErrorを取得しないので、私はいつもうんざりしています。 –