Мой подход заключается в проверке, содержит ли строка двойные кавычки, но это кажется слишком наивным, потому что он также преобразует строку, которая естественным образом содержит двойную кавычку, но не предназначена для использования в качестве объекта JSON. Есть ли более надежный способ добиться этого?
Код: Выделить всё
import json
results = {"not_string": 1234,
"not_json": "1234",
"json": '[{"json": "1234"}]',
"false_positive": '["actually a quote in brackets"]'}
# load the json fields in the results
for key, value in results.items():
if isinstance(value, str) and '"' in value:
try:
results[key] = json.loads(value)
except Exception as e:
pass
for key, value in results.items():
print(type(value))
Код: Выделить всё
Подробнее здесь: [url]https://stackoverflow.com/questions/75811600/convert-stringified-json-objects-to-json[/url]
Мобильная версия