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 相关文章推荐
将图片文件嵌入到wxpython代码中的实现方法
Aug 11 Python
python中列表元素连接方法join用法实例
Apr 07 Python
Python中的元类编程入门指引
Apr 15 Python
深入讲解Python编程中的字符串
Oct 14 Python
python实现爬虫统计学校BBS男女比例之数据处理(三)
Dec 31 Python
Fabric 应用案例
Aug 28 Python
python fabric实现远程部署
Jan 05 Python
彻底理解Python list切片原理
Oct 27 Python
详解Python进阶之切片的误区与高级用法
Dec 24 Python
opencv实现静态手势识别 opencv实现剪刀石头布游戏
Jan 22 Python
记录Python脚本的运行日志的方法
Jun 05 Python
Python爬虫制作翻译程序的示例代码
Feb 22 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 header函数分析详解
2011/08/06 PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
2015/07/06 PHP
日常整理PHP中简单的图形处理(经典)
2015/10/26 PHP
Yii2 rbac权限控制之菜单menu实例教程
2016/04/28 PHP
Yii2.0预定义的别名功能小结
2016/07/04 PHP
JavaScript 数组运用实现代码
2010/04/13 Javascript
jQuery阻止冒泡和HTML默认操作
2010/11/17 Javascript
Js 冒泡事件阻止实现代码
2013/01/27 Javascript
js动态添加事件并可传参数示例代码
2013/10/21 Javascript
js控制淡入淡出示例代码
2013/11/12 Javascript
jquery修改属性值实例代码(设置属性值)
2014/01/06 Javascript
JS读取XML文件数据并以table形式显示数据的方法(兼容IE与火狐)
2016/06/02 Javascript
vue.js学习笔记之绑定style样式和class列表
2016/10/31 Javascript
nodeJs链接Mysql做增删改查的简单操作
2017/02/04 NodeJs
详解webpack分包及异步加载套路
2017/06/29 Javascript
Vue组件实例间的直接访问实现代码
2017/08/20 Javascript
Vue路由切换时的左滑和右滑效果示例
2018/05/29 Javascript
原生JS实现旋转轮播图+文字内容切换效果【附源码】
2018/09/29 Javascript
使用layui 的layedit定义自己的toolbar方法
2019/09/18 Javascript
react的hooks的用法详解
2020/10/12 Javascript
对Python3之进程池与回调函数的实例详解
2019/01/22 Python
使用TensorFlow-Slim进行图像分类的实现
2019/12/31 Python
解决pyinstaller打包运行程序时出现缺少plotly库问题
2020/06/02 Python
浅谈opencv自动光学检测、目标分割和检测(连通区域和findContours)
2020/06/04 Python
即时搜索数百万张门票:SeatsForEveryone.com
2018/08/26 全球购物
美国运动鞋和服装网上商店:YCMC
2018/09/15 全球购物
伦敦剧院门票:London Theatre Direct
2018/11/21 全球购物
保荐人的岗位职责
2013/11/19 职场文书
网页设计个人找工作求职信
2013/11/28 职场文书
《三亚落日》教学反思
2014/04/26 职场文书
应届大专生求职信
2014/06/26 职场文书
怎样写离婚协议书
2014/09/10 职场文书
党的群众路线调研报告
2014/11/03 职场文书
2015年网管个人工作总结
2015/05/22 职场文书
梳理总结Python开发中需要摒弃的18个坏习惯
2022/01/22 Python
Python使用mitmproxy工具监控手机 下载手机小视频
2022/04/18 Python