簡體   English   中英

如何在 Python 中打印特定的 JSON 值?

[英]How to print particular JSON value in Python?

所以我有一個 Python 代碼,它返回一個像這樣的 JSON 字符串:

'{"X": "value1", "Y": "value2", "Z": [{"A": "value3", "B": "value4"}]}'

我想要做的是打印和/或返回(在 Python 中) "value 3"以便使用它。 還將它分配給一個變量,以便我以后可以使用它。

我怎樣才能做到這一點?

>>> 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'

好的,我假設您的 JSON 如下所示(注意每個value周圍的" ):

{"X":"value1", "Y":"value2", "Z":[{"A":"value3", "B":"value4"}]}

然后你可以這樣做:

import json
j = '{"X":"value1", "Y":"value2", "Z":[{"A":"value3", "B":"value4"}]}'
k = json.loads(j)
assert k["Z"][0]["A"] == "value3"

編輯:即使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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM