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删除nginx缓存文件示例(python文件操作)
Mar 26 Python
举例区分Python中的浅复制与深复制
Jul 02 Python
Python实现批量将word转html并将html内容发布至网站的方法
Jul 14 Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
Sep 08 Python
Python实现GUI学生信息管理系统
Apr 05 Python
详解flask入门模板引擎
Jul 18 Python
python实现自动获取IP并发送到邮箱
Dec 26 Python
python可视化篇之流式数据监控的实现
Aug 07 Python
python中的列表与元组的使用
Aug 08 Python
python 定时器每天就执行一次的实现代码
Aug 14 Python
python zip()函数使用方法解析
Oct 31 Python
Python开发.exe小工具的详细步骤
Jan 27 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
php5 apache 2.2 webservice 创建与配置(java)
2011/01/27 PHP
PHP中使用register_shutdown_function函数截获fatal error示例
2015/04/21 PHP
php实现源代码加密的方法
2015/07/11 PHP
使用Appcan客户端自动更新PHP版本号(全)
2015/07/31 PHP
ThinkPHP路由机制简介
2016/03/23 PHP
PHP常用操作类之通信数据封装类的实现
2017/07/16 PHP
PHP设计模式之单例模式定义与用法分析
2019/03/26 PHP
一文看懂PHP进程管理器php-fpm
2020/06/01 PHP
jquery.boxy弹出框(后隔N秒后自动隐藏/自动跳转)
2013/01/15 Javascript
JavaScript基础教程之alert弹出提示框实例
2014/10/16 Javascript
解决node-webkit 不支持html5播放mp4视频的方法
2015/03/11 Javascript
javascript简易画板开发
2020/04/12 Javascript
浅谈键盘上回车按钮的js触发事件
2017/02/13 Javascript
vue实现全选、反选功能
2020/11/17 Javascript
vue.js国际化 vue-i18n插件的使用详解
2017/07/07 Javascript
详解使用React全家桶搭建一个后台管理系统
2017/11/04 Javascript
vue项目中使用vue-i18n报错的解决方法
2019/01/13 Javascript
详解Vue之父子组件传值
2019/04/01 Javascript
js模拟实现百度搜索
2020/06/28 Javascript
JavaScript本地储存:localStorage、sessionStorage、cookie的使用
2020/10/13 Javascript
Django开发中复选框用法示例
2018/03/20 Python
Python3内置模块pprint让打印比print更美观详解
2019/06/02 Python
python使用原始套接字发送二层包(链路层帧)的方法
2019/07/22 Python
python3连接mysql获取ansible动态inventory脚本
2020/01/19 Python
python两种注释用法的示例
2020/10/09 Python
CSS实现圆形放大镜狙击镜效果 只有圆圈里的放大
2012/12/10 HTML / CSS
精油和天然健康美容产品:Art Naturals
2018/01/27 全球购物
中专生求职自荐信范文
2013/12/22 职场文书
《北大荒的秋天》教学反思
2014/04/14 职场文书
个人课题方案
2014/05/08 职场文书
大专生自我鉴定怎么写
2014/09/16 职场文书
处级领导班子全部召开专题民主生活会情况汇报
2014/09/27 职场文书
励志语录:你若不勇敢,谁替你坚强
2019/11/08 职场文书
PHP判断是否是json字符串
2021/04/01 PHP
mysql查询结果实现多列拼接查询
2022/04/03 MySQL
Golang 链表的学习和使用
2022/04/19 Golang