我有这个字符串:
> x.data
u'{u"orderNumber": u"69898327728", u"resultingTrades": []}'
如何将其转换为json
?这不起作用:
> import json
> json.dumps(x.data)
'"{u\\"orderNumber\\": u\\"69898327728\\", u\\"resultingTrades\\": []}"'
它只是创建一个长字符串。我需要将其转换为 json,以便稍后我可以执行 json.loads 并访问字典中的键,如下所示:
y = json.loads(x.data)["orderNumber"]
最佳答案
我发现您的字符串的问题是它包含 key 的 python u""
格式。
现在,如果您信任您的字符串并且知道它将保留该格式,则可以使用 eval(x.data)
来取回字典,但 eval 非常危险。
json.loads(json.dumps(eval(a)))
如果我是你,我会付出更多的努力来确保你得到更好的字符串来处理,如果这是在你的能力范围内。
如果没有,您可以尝试手动删除引号和 u
。
data = x.data.replace('u"', "")
data = data.replace('"', "")
json.loads(json.dumps(data))
关于Python 使字符串 json 可加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41970745/