【发布时间】:2019-10-29 08:42:56
【问题描述】:
我正在尝试将下面提到的 json 字符串转换为 python 字典。我正在使用 python 3 的 json 包。这是我正在使用的代码:
a = "[{'id': 35, 'name': 'Comedy'}, {'id': 18, 'name': 'Drama'}, {'id': 10751, 'name': 'Family'}, {'id': 10749, 'name': 'Romance'}]"
b = json.loads(json.dumps(a))
print(type(b))
我从上面的代码得到的输出是:
我在 stackoverflow 中看到了类似的问题,但针对这些问题提供的解决方案不适用于我的案例。
【问题讨论】:
-
json.dumps(a)用另一组双引号将其封装起来,因此当您尝试loads时,您会得到一个字符串。 -
顺便说一句,AFAIK
json.dumps被指定接受一个对象(dict)并将其转换为字符串,所以我看不出以字符串开头的调用它的意义。跨度> -
另外,为了让字符串正确表示 JSON 对象,每个键必须用双引号而不是单引号封装。因此,您的输入字符串甚至不是有效的 JSON 表示形式。
标签: json python-3.x dictionary