【发布时间】:2019-05-28 22:33:25
【问题描述】:
我有这个字符串,我想将其转换为列表:
"{'Attributes': {'a', 'b', 'h'}, 'Group3': {'c'}, 'Group2': {'s', 'm', 'r', 'ac'}}"
我试过json.loads(),它给了我这个错误:
JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
它来自另一个程序,我无法控制引用...单引号或双引号
环境:Python 3.x 导入 json
我的代码:
mystr = "{'Attributes': {'a', 'b', 'h'}, 'Group3': {'c'}, 'Group2': {'s', 'm', 'r', 'ac'}}"
mylist = json.loads(mystr)
我希望它是一个有效的列表
【问题讨论】:
-
json.loads(mystr.replace("'", "\"")) -
也许只是一个术语错误,但该 json 中的任何内容都不是 list。
{'a', 'b', 'h'}是一个集合。 -
您的字符串不包含有效的 JSON,因此 json 解析器将失败。