已解决json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
已解决(Python解析json文件报错)raise JSONDecodeError(“Expecting value”, s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
文章目录
- 报错代码
- 报错翻译
- 报错原因
- 解决方法
- 帮忙解决
报错代码
粉丝群里面的一个粉丝在用Python解析JSON文件,但是发生了报错(跑来找我求助,然后顺利帮助他解决了,顺便记录一下希望可以帮助到更多遇到这个bug不会解决的小伙伴),报错信息和代码如下:
with zfile.open(name, mode='r') as json_file:print(json_file, type(json_file))json_bytes = str(json_file.read())# print(json_bytes,type(json_bytes))json_list = json_bytes.split("\\r\\n")for i in json_list[0:1]:print(i,type(i))python_obj = json.loads(i)
报错信息截图如下(使用json模块经常遇见的bug):
报错翻译
报错信息翻译如下:
从None引发JSONDecodeError(“期望值”,s,err.value)
json.decoder。JSONDecodeError:应为值:第1行第1列(字符0)
报错原因
报错原因:
loads() 传的是python的dict字典类型,而我们刚刚传递的类型不符合,所以报错了。下面我们来讲解json模块常用的四个函数:
- json.load():将一个存储在文件中的json对象(str)转化为相对应的python对象
- json.loads():将一个json对象(str)转化为相对应的python对象
- json.dump():将python的对象转化为对应的json对象(str),并存放在文件中
- json.dumps(): 将python的对象转化为对应的json对象(str)
解决方法
使用eval进行转换
(1)操作步骤
a = '{"a":"1", "b":"1"}'
b = eval(a)
print(b, type(b))
输出:
{‘a’: ‘1’, ‘b’: ‘1’} <class ‘dict’>
这个时候再去用JSON库去读取就可以了
帮忙解决
本文已收录于:《告别Bug》专栏
本专栏用于记录学习和工作中遇到的各种疑难Bug问题,以及粉丝群里小伙伴提出的各种问题,文章形式:报错代码 + 报错翻译 + 报错原因 + 解决方法,包括程序安装、运行程序过程中等等问题,订阅专栏+关注博主后如遇到其他问题可私聊帮忙解决!!!
已解决json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)相关推荐
- 【debug】json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
摘要 环境: 编程语言:Python 3.7 操作系统:Win 10 json数据对象:https://kyfw.12306.cn/otn/leftTicket/query?leftTicketDTO ...
- json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 问题解决
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 问题解决 参考文章: (1)json.decoder.J ...
- (已解决)json.decoder.JSONDecodeError: Extra data: line 1 column 47 (char 46)
问题描述 *json.load(file)*出现上述错误. 原因是file中包含不止一条记录.json.load函数只能解析一条记录. 解决方案 将多条记录强行封装为一条,便可读取. Referenc ...
- json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
可以参考一波:https://stackoverflow.com/questions/16573332/jsondecodeerror-expecting-value-line-1-column-1- ...
- json.decoder.JSONDecodeError: Expecting ‘,‘ delimiter: line xx column xx (char xxx)
将python json字符串转为json的时候出现了:json.decoder.JSONDecodeError: Expecting ',' delimiter: line 12 column 55 ...
- json.decoder.JSONDecodeError: Expecting value: line 28 column 5 (char 731)
傻屌问题,看看是不是json.load读的文件是不是多了哪个符号. 比如这里最后面多了个逗号就报错............
- Python 中JSONDecodeError: Expecting value: line 1 column 1 (char 0)错误
文章目录 尝试解析空字符串会导致错误 错误的常见原因 尝试解析无效的 JSON 值 忘记用引号括起属性或字符串值 对属性或值使用单引号而不是双引号 确保你没有尾随逗号 发出 HTTP 请求时得到空响应 ...
- json.decoder.JSONDecodeError: Invalid \escape: line 1 column 44 (char 43)
import jsondict_str = '{ "content": ""\u003Cblockquote class=\"pgc-blockquo ...
- 解决json.loads()错误Expecting ‘,‘ delimiter: line 1 column
for i,list in enumerate((json.loads(v.strip()) for v in f.readlines())):course_list.append(list) 在用j ...
- raise JSONDecodeError(“Extra data“, s, end) json.decoder.JSONDecodeError: Extra data: line 1 column
raise JSONDecodeError("Extra data", s, end) json.decoder.JSONDecodeError: Extra data: line ...
最新文章
- 用法 stl_PoEdu培训第四课-C++之STL
- 对python源码进行编译,加密python脚本
- Effective Java之考虑用序列化代理代理序列化实例(七十八)
- 数据结构杂谈番外篇——时间复杂度计算
- 面试突击32:为什么创建线程池一定要用ThreadPoolExecutor?
- 嵌入式Linux操作系统移植IMX6开发板之实现USB 自动挂载
- 【车联网】一文了解5G在车联网中的应用
- opencv-api arcLength
- easyUI的使用.datagrid()生成列表日期时间显示异常,一个方法带入有效修复
- javac -version ;java -version不一致
- pycharm访问服务器终端
- lisp语言画地物符号_地形图中的地物符号说明汇总
- MySQL倒计时查询剩余时间xx年xx月xx天
- 算法精解----log符号什么意思
- Windows---命令打开截图工具,.bat文件执行
- 哪个品牌的触控笔质量好?ipad好用的触控笔
- unity2019安装完后打不开直接闪退_VS2019打不开或没反应该怎么解决?
- 带你了解递归算法的时间复杂度
- TCP/IP协议,卷一第42页错误
- Keras loss函数
热门文章
- 我是如何从零开始自学Android到一万月薪的
- 学计算机的买HP合适吗,大学生买笔记本电脑,这样选就对了。
- ps切图技巧、基础工具,使用方法总结
- p=p-next 表达了什么意思
- iPhone12或再引领轻薄时尚风潮,半斤机将被抛弃
- DLT - Diagnostic Log and Trace简介
- 【UVa 12304】2D Geometry 110 in 1! (计算几何、圆)
- [Asp.net Core]局部视图
- 1、STM32通过软件IIC连接ADXL345(ADXL345使用遇到的一些坑)
- 基于stm32的车辆减速灯项目——MPU6050或ADXL345