【发布时间】:2021-12-16 06:44:54
【问题描述】:
目前我正在使用split 解析一个字符串并返回以下内容
{fruit1:"Apple",fruit2:"Orange",fruit3:"Pear"}
我想使用 json.loads 将此字符串转换为 json,但出现以下错误
json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes
我将如何在这个字符串中添加双引号,以便我可以在下面执行所需的结果
food = '{"fruit1":"Apple","fruit2":"Orange","fruit3":"Pear"}'
print(food['fruit1'])
-----------
Apple
【问题讨论】:
-
为什么不首先使用
json.dumps()创建字符串? -
这根本不是 JSON 输入。也许是JavaScript?如果您将其创建为 JSON,则不会出现此问题。如果您真的想将其他 JavaScript 转换为 JSON,最好的方法是使用 JavaScript 解释器。
-
最简单的方法是首先将字符串写成正确的 JSON。那个字符串是从哪里来的?看起来像其他人所说的JS,但是JS提供了将对象转换为有效json的功能:developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
-
您不能可靠地添加引号 - 需要引号和转义序列才能使输入明确。