You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python读取含反斜杠的JSON文件报错,如何正常读取并访问数据?

JSON文件含未转义反斜杠导致Python读取失败的解决办法

问题背景

给定的JSON文件中,STOK_TEXT字段包含未正确转义的反斜杠(如7\\"),导致标准JSON解析失败。使用常规json.load()读取时触发错误,需要修复后才能正常访问数据。

JSON内容:

{"Status":"OK","isSuccess":true,"Error":"","Data":[{"STOK_KODU":"REMA-50100","BR1_PAYDA":1,"MARKA":"REMARK","URETICI_KODU":"50100","KDV_ORANI":18.0,"STOK_DURUM":"3ARA","IMG":1,"STOK_TEXT":"REM03@FAN MOTORU 24VANELI  7\\"@@ REMARK@ @@ XRFM1103@ 009 2985@ 2394009@ RF03","ORAN1":43.00000000,"ORAN2":7.00000000,"ORAN3":0.00000000,"ORAN4":0.0,"ORAN5":0.0,"ORAN6":0.0,"ORAN7":0.0,"SATIS1":9067.9},{"STOK_KODU":"REMA-03","BR1_PAYDA":1,"MARKA":"REMARK","URETICI_KODU":"503","KDV_ORANI":18.0,"STOK_DURUM":"3ARA","IMG":1,"STOK_TEXT":"R103@MARS MOTORU 24V75 KW DELC955 D STR3@@ REMARK@ @TYERA/BR23/ @ XRE0103@ @ 2313@ 50103","ORAN1":43.00000000,"ORAN2":7.00000000,"ORAN3":0.00000000,"ORAN4":0.0,"ORAN5":0.0,"ORAN6":0.0,"ORAN7":0.0,"SATIS1":9067.9}]}

尝试的Python代码:

import json

with open("4.json", encoding="utf8") as file:
    reader = json.load(file)
    print(reader["Status"])

解决方法

1. 预处理文本修复转义

先读取文件内容,将未转义的反斜杠替换为JSON合法的转义形式,再解析:

import json

with open("4.json", encoding="utf8") as f:
    raw_content = f.read()
    # 把单个反斜杠替换为双反斜杠(JSON要求转义)
    fixed_content = raw_content.replace('\\', '\\\\')
    parsed_data = json.loads(fixed_content)
    
    # 验证读取结果
    print(parsed_data["Status"])
    for item in parsed_data["Data"]:
        print(f"库存编码: {item['STOK_KODU']}, 描述: {item['STOK_TEXT']}")

2. 使用ast.literal_eval解析

如果数据格式接近Python字典,ast.literal_eval对非标准转义的容忍度更高,且安全无风险:

import ast

with open("4.json", encoding="utf8") as f:
    raw_content = f.read()
    parsed_data = ast.literal_eval(raw_content)
    
    print(parsed_data["Status"])

3. 手动修正原始JSON文件(推荐)

直接修改JSON文件中的问题字段,将7\\"调整为7\\\"(给反斜杠添加转义),这样标准json.load()就能直接读取:
修正后的字段示例:

"STOK_TEXT":"REM03@FAN MOTORU 24VANELI  7\\\"@@ REMARK@ @@ XRFM1103@ 009 2985@ 2394009@ RF03"

内容的提问来源于stack exchange,提问作者canavarbanavar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 04:37:46