4
我对Python很新,所以这里是我的问题。python - 替换json中未知键的值
我正在做一个HTTP调用来获取一些用Javascript创建的JSON数据。此JSON可能具有一些值,如"nan"
,"inf"
或"-inf"
作为字符串。这些值的键和深度是未知的。我想在Python方面做的是找到这些值,并用Python的等价物float("nan")
或float("inf")
替换它们。就像我被告知的那样,改变Javascript端的任何东西都是不可能的。
我用下面的函数读取HTTP响应并返回JSON相当于
def http_response_to_json(response):
response_str = ""
CHUNK = 16 * 1024
while True:
try:
chunk = response.read(CHUNK)
if not chunk:
break
response_str += chunk
except httplib.IncompleteRead, e:
response_str += e.partial
return json.loads(response_str)
我对json.loads
的object_hook
参数读取了,但我不知道是否和如何使用它。
P.S.我使用Python 2仍然
感谢
不得不改变'isinstance(dirty_data,STR)'来'isinstance(dirty_data,basestring)'让它工作。任何想法为什么? – XeniaSis
当我检查type(“test”)和type(json.loads('{“a”:“123”}')[“a”])'时,他们说这是'str'所以我不知道你为什么会这样。无论如何, – GKBRK
!谢谢!答案接受:) – XeniaSis