Я довольно новичок в Python, так что вот мой вопрос.python - заменить значение неизвестного ключа в json
Я делаю HTTP-запрос для получения некоторых данных JSON, которые были созданы с помощью Javascript. Этот 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, ул)' в 'isinstance (dirty_data, basestring)' для его работы. любая идея почему? – XeniaSis
Когда я проверяю тип с помощью 'type (" test ")' и 'type (json.loads ('{" a ":" 123 "}') [" a "])' они говорят, что это 'str' поэтому я понятия не имею, почему это было бы иначе для вас. – GKBRK
в любом случае! благодаря! Ответ принят :) – XeniaSis