は、だから私は、Pythonのコードウィッヒは、このようなJSON文字列を返します:Pythonで特定のJSON値をプリントする方法は?
'{"X": "value1", "Y": "value2", "Z": [{"A": "value3", "B": "value4"}]}'
私は何をしたいことは、印刷および/またはそれを使用するために"value 3"
(Pythonで)返すことです。私は後でそれを使用することができますので、変数にも割り当てます。
どうすればいいですか?
は、だから私は、Pythonのコードウィッヒは、このようなJSON文字列を返します:Pythonで特定のJSON値をプリントする方法は?
'{"X": "value1", "Y": "value2", "Z": [{"A": "value3", "B": "value4"}]}'
私は何をしたいことは、印刷および/またはそれを使用するために"value 3"
(Pythonで)返すことです。私は後でそれを使用することができますので、変数にも割り当てます。
どうすればいいですか?
>>> import json
>>> a = json.loads('{"X":"value1","Y":"value2","Z":[{"A":"value3","B":"value4"}]}')
>>> a
{'Y': 'value2', 'X': 'value1', 'Z': [{'A': 'value3', 'B': 'value4'}]}
>>> a["Z"][0]["A"]
'value3'
OK、私はあなたのJSONは、この(各value
周り"
に注意してください)のように見えると仮定します。でも:
import json
j = '{"X":"value1", "Y":"value2", "Z":[{"A":"value3", "B":"value4"}]}'
k = json.loads(j)
assert k["Z"][0]["A"] == "value3"
編集:
{"X":"value1", "Y":"value2", "Z":[{"A":"value3", "B":"value4"}]}
次に、あなたがこれを行うことができますsimplejson
は元の入力をデコードできません。
>>> import simplejson
>>> s1 = '{"X":value1,"Y":"value2","Z":[{"A":"value3","B":value4}]}'
>>> simplejson.loads(s1)
simplejson.decoder.JSONDecodeError: No JSON object could be decoded: line 1 column 0 (char 0)
>>> s2 = '{"X":"value1", "Y":"value2", "Z":[{"A":"value3", "B":"value4"}]}'
>>> print simplejson.loads(s2)["Z"][0]["A"]
value3
ああ! 2つのこと:私はデータを解析するために "simplejson"モジュールを使用しています。私の文字列は私の質問で最近編集されたものと同じです...あなたの答えは当てはまりますか?私はsimplejson.loads(datavariable)を使用しているので、 – Jmlevick
コード上のミスのため申し訳ありません! thnx! – Jmlevick
注: "simplejson"モジュールを使用してデータを解析しています – Jmlevick
あなたの入力はまだ有効なJSONではありません。 'value1'と' value4'は引用符で囲まなければなりません。 'simplejson'でもあなたの入力を解読することはできません。 –