import json
a = '{"t": 1, "c": "a"}'
a = json.loads(a)
print(a["t"])
这样对字符串转 dict 是正常的。
但是如果
import json
a = "{'t': 1, 'c': 'a'}"
a = json.loads(a)
会报json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
import json
a = "{'t': 1, 'c': 'a'}"
a = json.dumps(a)
a = json.loads(a)
print(a["t"])
在进行loads()
的时候没有报错,但是在调用的时候报TypeError: string indices must be integers
看了一圈资料有点懵,JSON 是不允许用单引号括起 key 的,Python 的 JSON 模块可以dumps
转一下再loads
但是就有点没理解了
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.