需求:
当获取的字符中包含斜杠’'时,需要把字符串转换为dict,那么需要先对字符串中的斜杠做转换,否则会报以下异常:
json.decoder.JSONDecodeError: Invalid \escape: line 1 column 38 (char 37)
代码处理:
import json
# 转换成字符串类型
str = '{"resultSet": [{"dm": "1", "mc": "广东省\广州市\天河区"}]}'
print('原字符串为:' + str)
# str 转 dict
str_a = str.replace("\\", "\\\\") # 先处理斜杠
str_b = json.loads(str_a)
print('转换为字典后:', str_b)
# 正常提取dict的内容
print(str_b['resultSet'][0]['mc'])
执行结果
原字符串为:{"resultSet": [{"dm": "1", "mc": "广东省\广州市\天河区"}]}
转换为字典后: {'resultSet': [{'dm': '1', 'mc': '广东省\\广州市\\天河区'}]}
广东省\广州市\天河区