json.decoder.JSONDecodeError: Invalid \escape: line 1 column 1 (char 1)

json.decoder.JSONDecodeError: Invalid \escape: line 1 column 1 (char 1)

异常解读

该异常的格式一般为:

json.decoder.JSONDecodeError: Invalid \escape: line 1 column 1 (char 1)
注意后面的数字 line 123456789(数字可以为任意值), column 123456789(数字可以为任意值),char 123456789 (数字可以为任意值)

异常的中文释义:
JSONDecodeError(JSON 解码错误)Invalid \escape:无效字符反斜线 ,也就是说你的待格式字符串中包含一个\

该异常一般出现在 JSON 格式化的情况下,如果 JSON 中出现特殊字符易出现该 BUG。

异常解决方案

解决办法非常简单,通过字符串替换函数,将反斜线\替换掉即可。

s = json_str.replace('\\', '\\\\')
db = json.loads(s)

此类问题解决方案相对一致,其余字符类可以参照此问题的解决方案,模仿即可。

附录

本系列文章只供记录 Python 日常开发过程中 偶遇 BUG,提供给学生作为参考数据与解决方案用,属于记录型博客,查阅到的读者希望可解决你的问题。

错误提示样板,可以与你的错误进行比对。

Traceback (most recent call last):
  File "g:/MyFiles/xiaoke/idnex2.py", line 25, in <module>
    get_db()
  File "g:/MyFiles/xiaoke/idnex2.py", line 20, in get_db
    db = json.loads(json_db)
  File "F:\P3.6\lib\json\__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "F:\P3.6\lib\json\decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "F:\P3.6\lib\json\decoder.py", line 355, in raw_decode
    obj, end = self.scan_once(s, idx)
json.decoder.JSONDecodeError: Invalid \escape: line 32397 column 33 (char 836514)

你可能感兴趣的:(Python,BUG记录,JSONDecodeError,Invalid,\escape,line,1,column,1,char,1)