【发布时间】:2020-01-03 16:33:26
【问题描述】:
我正在使用 json.loads 来解析 JSON 字符串。但是,当它包含转义的双引号时,它会将字符串标识为无效的 JSON。由于字符串本身是有效的,我如何在不修改输入字符串的情况下正确解析它(即使用 \\" 而不是 \")。这是我的代码:
import json
a = '{"name":"Nickname \"John\" Doe", "age":31, "Salary":25000}'
print ("initial strings given - \n", a)
try:
json_object1 = json.loads(a)
print ("Is valid json? true")
except ValueError as e:
print ("Is valid json? false")
谢谢!
【问题讨论】:
-
但是,该字符串中的 所有 引号是否都被有效地转义了,无论它们前面是否有“\”?
'"\"'的计算结果与'""'相同。 -
让
json从字典生成 JSON 会更简单:a = json.dumps(dict(name='Nickname "John" Doe', age=31, Salary=25000))。
标签: python json validation parsing