python转化字符串形式的json

时间:2023-11-29 20:16:14

在使用python对字符串形式的json进行 json.loads() 的操作时,遇到了:JSONDecodeError: Invalid \escape,提示\无法excape,可以通过以下方式将字符串中的"\" 替换成"\\",然后在字典中对键或者值再替换回来

  • configfile 如下
{
"user_dir" : "C:\\Users\\Fred\\Desktop\\lab",
"title" : "data analysis scientist",
"name" : "Fred"
}
  • python代码如下
with  open(configfile, 'r') as f:
conf = f.read().replace('\\', '\\\\')
conf_dict = json.loads(configstr)
config = {k: v.replace('\\\\', '\\') for k, v in conf_dict .items()}
print(config)

当然中间的替换的字符可以是其他的不常用的字符串,以免替换的时候,将原本不该替换的转化了