json.decoder.JSONDecodeError: Invalid \escape: line 11422 column 19 (char 205418)

在尝试加载大型(几百M)的JSON文件时遇到了错误,经过测试发现该问题与文件大小有关。通过在`open`函数中指定`encoding=utf-8`,问题得到了解决。尽管在代码文件头部添加`#-*-coding:utf-8-*-`注释并未产生效果,但在`withopen`语句中明确指定编码方式是有效的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在加载一个几百M的json文件时,出现这个错误,可以看出并不是内存问题,为了排查错误,特意同样的代码加载一个几M的json文件,没有出错,初步结论是可能和大小有关。看了很多资料都没有解决问题

         with open(json_file_path,"r") as f:
                json_data = json.load(f)

修改如下,只增加了编码方式的限定, 问题解决

   with open(json_file_path,"r", encoding="utf-8") as f:
         json_data = json.load(f)
           

我还测试发现在代码文件的开头加上# -*- coding: utf-8 -*-并无效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值