如何将字符串转换为字典?

时间:2020-02-08 21:18:45

标签: python json dictionary

有一个网站以字符串形式返回响应:

{"ConsignorName": "first part "second part""}

应为JSON。结果应为

{'ConsignorName': 'first part "second part"'}

我不能仅仅json.loads(data),因为它失败了

json.decoder.JSONDecodeError: Expecting ',' delimiter:...`

所以我不知何故需要将此字符串转换为dict。也许您知道某些方法可以做到这一点?

2 个答案:

答案 0 :(得分:1)

d = {"ConsignorName": "first part \"second part\""}

以谦虚的态度,您需要对字符串内的"进行转义。 否则,JSON将在"first part ",之后正确地期望。

您可以通过以下方式从json内写入{\ {1}}或从python加载:

# write
with open("test.json", "w") as out: 
    json.dump(d, fp=out) 

# read
with open("test.json") as fin: 
    myd = json.load(fin)  

myd然后是:

myd
## {'ConsignorName': 'first part "second part"'}

答案 1 :(得分:-2)

{“ ConsignorName”:“第一部分为“第二部分””}

这真的是网站的回报吗? 根本不是有效的json。

在“第二个...”前面应该有一个转义字符。