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利用正则表达式匹配并截取指定子串及去重的方法
Jul 30 Python
Python输出各行命令详解
Feb 01 Python
对Python中range()函数和list的比较
Apr 19 Python
python3使用SMTP发送简单文本邮件
Jun 19 Python
在python中实现对list求和及求积
Nov 14 Python
python实现转盘效果 python实现轮盘抽奖游戏
Jan 22 Python
Django密码存储策略分析
Jan 09 Python
python+opencv边缘提取与各函数参数解析
Mar 09 Python
PyQt5事件处理之定时在控件上显示信息的代码
Mar 25 Python
Python类class参数self原理解析
Nov 19 Python
举例讲解Python装饰器
Dec 24 Python
Python如何让字典保持有序排列
Apr 29 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 无法加载mcrypt.dll的解决办法
2013/04/03 PHP
Netbeans 8.2将支持PHP7 更精彩
2016/06/13 PHP
常用PHP数组排序函数归纳
2016/08/08 PHP
php实现表单提交上传文件功能
2018/05/28 PHP
Windows Live的@live.com域名注册漏洞 利用代码
2006/12/27 Javascript
扩展jquery实现客户端表格的分页、排序功能代码
2011/03/16 Javascript
JS上传前预览图片实例
2013/03/25 Javascript
js 窗口抖动示例
2013/09/04 Javascript
JS按字节截取字符长度实例
2013/11/20 Javascript
jQuery实现购物车数字加减效果
2015/03/14 Javascript
学习vue.js计算属性
2016/12/03 Javascript
在DWR中实现直接获取一个JAVA类的返回值的两种方法
2016/12/25 Javascript
详解在Angularjs中ui-sref和$state.go如何传递参数
2017/04/24 Javascript
前端跨域的几种解决方式总结(推荐)
2017/08/16 Javascript
原生js中ajax访问的实例详解
2017/09/19 Javascript
Vue-axios-post数据后端接不到问题解决
2020/01/09 Javascript
Python httplib,smtplib使用方法
2008/09/06 Python
教你用Python脚本快速为iOS10生成图标和截屏
2016/09/22 Python
用python实现简单EXCEL数据统计的实例
2017/01/24 Python
详解Python pygame安装过程笔记
2017/06/05 Python
python列表的增删改查实例代码
2018/01/30 Python
Python嵌套列表转一维的方法(压平嵌套列表)
2018/07/03 Python
对python中的乘法dot和对应分量相乘multiply详解
2018/11/14 Python
python hbase读取数据发送kafka的方法
2018/12/27 Python
Python获取统计自己的qq群成员信息的方法
2019/11/15 Python
python-xpath获取html文档的部分内容
2020/03/06 Python
python输入中文的实例方法
2020/09/14 Python
详解tensorflow之过拟合问题实战
2020/11/01 Python
Pyecharts 中Geo函数常用参数的用法说明
2021/02/01 Python
韩国美国时尚服装和美容在线全球市场:KOODING
2018/11/07 全球购物
信息部岗位职责
2013/11/12 职场文书
经理管理专业自荐信范文
2013/12/31 职场文书
乐观大学生的自我评价
2014/01/10 职场文书
集体备课反思
2014/02/12 职场文书
仓库保管员岗位职责
2015/02/09 职场文书
Python 使用dict实现switch的操作
2021/04/07 Python