python遇坑记录-json.loads() :JSONDecodeError: Invalid \escape

环境:python3.6


json文件:

{
   "src_dir"            :   "C:\\Users\\admin\\Desktop\\99\\apkobb",
   "bucket"             :   "tocggspace",
   "key_prefix"         : "ggspace/self/"
}

py文件:

import sys, json

configfile = sys.argv[1]

config = json.loads(configfile)

执行:json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
文件中的\\无法decode,思路先转成其他的字符,decode之后再转回来

import sys, json

configfile = sys.argv[1]

f = open(configfile, r)
configstr = f.read().replace(\\, \\\\)
configtmp = json.loads(configstr)
config = {k: v.replace(\\\\, \\) for k, v in configtmp.items()}
print(config)

数据结果:

{src_dir: C:\\Users\\admin\\Desktop\\99\\apkobb, bucket: tocggspace, key_prefix: ggspace/self/}

问题解决

 

文章来自:https://www.cnblogs.com/leescre/p/9179249.html
© 2021 jiaocheng.bubufx.com  联系我们
ICP备案:鲁ICP备09046678号-3