执行以下代码后:
import json
a = '{"excludeTypes":"*.exe;~\\$*.*"}'
json.loads(a)
我明白了:
回溯(最近一次调用最后一次):文件“”,第1行,文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/init.py”,第338行,在load中返回_default_decoder.decode文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py”,第365行,在解码obj中,end = self . raw_decode(s,idx = _w(s,0).end())文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py”,第381行,在raw_decode obj中,end = self.scan_once(s,idx)ValueError:期望属性名称:第1行第2列(char 1)
那么如何将'a'转换为dict . 请注意,该字符串已经在'a'中,我不能在它前面添加'r' . 理想情况下,字符串应该是 {"excludeTypes":"*.exe;~\\\\$*.*"}
此外,以下代码不起作用:
import json
a = '{"excludeTypes":"*.exe;~\\$*.*"}'
b = repr(a)
json.loads(b)
2 回答
通过转义转义字符“\”: