python中报错"json.decoder.JSONDecodeError: Expecting value:"的解决


Posted in Python onApril 29, 2019

在学习python语言中用json库解析网络数据时,我遇到了两个编译错误:json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes:和json.decoder.JSONDecodeError: Expecting value:。费了一些时间才找到原因,在此记录总结,希望能对学习python的同学有所帮助。

 我运行的程序初始如下:

import json
data='''
{
'name' : 'A',
'phone': { 'type' : 'intl', 'number' : +1 23456 },
'email' : {'hide' : 'yes'}
}'''
info=json.loads(data)
print("Name:",info["name"])
print("EmailAttri:",info["email"]["hide"])

运行后报错,显示错误为json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes:,原来数据格式里string类型的数据要用双引号'' '',而不能用单引号' '。

 将里面的单引号一一改过来之后,编译器仍然报错:json.decoder.JSONDecodeError: Expecting value:。我以为是代码格式(缩进)的问题,反复修改后还是报错,这让我百思不得其解,在网上搜索了这一错误的解决方案,也没有找到合适的答案。最后,与老师的源代码逐一仔细比对,发现问题竟然出在"number"这个元素这里,我当时把它的值当作数字,其实在这里+1 23456是string类型,因此需要加上双引号。修改后程序如下,正确运行。

import json
data='''
{
"name" : "A",
"phone": { "type" : "intl", "number" : "+1 23456" },
"email" : {"hide" : "yes"}
}'''
info=json.loads(data)
print("Name:",info["name"])
print("EmailAttri:",info["email"]["hide"])

这个问题还有另一种解决方式,就是将+1 23456改写成123456,int类型,这样就不需要加双引号。
 我在网上搜索该问题时,发现有很多人也遇到了json.decoder.JSONDecodeError: Expecting value:这一错误,从我解决的过程中,我认为原因主要是数据的格式不正确。因此,如果是从网上爬取的数据,需要先检查一下数据格式设置是否符合json的要求,这样程序编译才能顺利通过。

更多趣事,python知识,可以关注小编的微信公众号【码农那点事儿】。

总结

以上所述是小编给大家介绍的python中报错"json.decoder.JSONDecodeError: Expecting value:"的解决 ,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
在Python中使用判断语句和循环的教程
Apr 25 Python
python实现的守护进程(Daemon)用法实例
Jun 02 Python
Python基于Matplotlib库简单绘制折线图的方法示例
Aug 14 Python
Python安装与基本数据类型教程详解
May 29 Python
华为校园招聘上机笔试题 扑克牌大小(python)
Apr 22 Python
Python Django切换MySQL数据库实例详解
Jul 16 Python
Pytorch技巧:DataLoader的collate_fn参数使用详解
Jan 08 Python
Python 实现将数组/矩阵转换成Image类
Jan 09 Python
Django重设Admin密码过程解析
Feb 10 Python
Python loguru日志库之高效输出控制台日志和日志记录
Mar 07 Python
python使用glob检索文件的操作
May 20 Python
Python加密技术之RSA加密解密的实现
Apr 08 Python
python实现微信定时每天和女友发送消息
Apr 29 #Python
Python3.5常见内置方法参数用法实例详解
Apr 29 #Python
python微信撤回监测代码
Apr 29 #Python
Python3.5 Json与pickle实现数据序列化与反序列化操作示例
Apr 29 #Python
详解Python中的内建函数,可迭代对象,迭代器
Apr 29 #Python
python抓取需要扫微信登陆页面
Apr 29 #Python
python基于itchat模块实现微信防撤回
Apr 29 #Python
You might like
PHP中10个不常见却非常有用的函数
2010/03/21 PHP
判断php数组是否为索引数组的实现方法
2013/06/13 PHP
typecho插件编写教程(三):保存配置
2015/05/28 PHP
Yii框架页面渲染操作实例详解
2019/07/19 PHP
jQuery UI AutoComplete 自动完成使用小记
2010/08/21 Javascript
自己动手实现jQuery Callbacks完整功能代码详解
2013/11/25 Javascript
JavaScript 学习笔记之操作符
2015/01/14 Javascript
PHP守护进程实例
2015/03/06 Javascript
jQuery+PHP实现动态数字展示特效
2015/03/14 Javascript
对Web开发中前端框架与前端类库的一些思考
2015/03/27 Javascript
jquery对复选框(checkbox)的操作汇总
2016/01/13 Javascript
JavaScript Ajax编程 应用篇
2016/07/02 Javascript
jQuery中get方法用法分析
2016/12/07 Javascript
xmlplus组件设计系列之按钮(2)
2017/04/26 Javascript
动态加载权限管理模块中的Vue组件
2018/01/16 Javascript
关于Google发布的JavaScript代码规范你要知道哪些
2018/04/04 Javascript
vue基础之使用get、post、jsonp实现交互功能示例
2019/03/12 Javascript
详解VScode编辑器vue环境搭建所遇问题解决方案
2019/04/26 Javascript
基于纯JS实现多张图片的懒加载Lazy过程解析
2019/10/14 Javascript
Python异常处理知识点总结
2019/02/18 Python
Django 数据库同步操作技巧详解
2019/07/19 Python
python利用openpyxl拆分多个工作表的工作簿的方法
2019/09/27 Python
Python3.8对可迭代解包的改进及用法详解
2019/10/15 Python
numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)
2020/04/28 Python
pandas to_excel 添加颜色操作
2020/07/14 Python
CSS3+Sprite实现僵尸行走动画特效源码
2016/01/27 HTML / CSS
Clarks英国官方网站:全球领军鞋履品牌
2016/11/26 全球购物
护士毕业生自我鉴定
2014/02/08 职场文书
教师网络培训感言
2014/03/09 职场文书
七匹狼男装广告词
2014/03/21 职场文书
计算机相关专业自荐信
2014/07/02 职场文书
2014年基层党支部工作总结
2014/12/04 职场文书
优秀教师个人总结
2015/02/11 职场文书
学术会议通知
2015/04/15 职场文书
立案决定书范文
2015/06/24 职场文书
JS实现九宫格拼图游戏
2022/06/28 Javascript