python中报错"json.decoder.jsondecodeerror:expectingvalue:"的解决(代码片段)

codestack123 codestack123     2022-12-02     105

关键词:

在学习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的要求,这样程序编译才能顺利通过。

我拼接了一个sql,在数据库中sql语句可正确运行,但在java代码中报错,sql命令未正确结束。

StringBuilderstrSql=newStringBuilder(); strSql.append("SELECTA.FILEOPSW4,A.FILEOPSW36,A.FILEOPSW1,to_char(A.FILEOPSW9,'yyyy-MM-dd')asFILEOPSW9,"); strSql.append("A.FILEOPSW5,A.FILEOPSW34,B.TAG20,A.FILEOPSW28,A.FILEOPSW6,FILEOPSW35,A.FILEOPSW13,"); strSql.append("(... 查看详情

导入excel文件到pandas中报错,更改encoding='utf-8',gb18030,gbk都没用?

importpandasaspdaa=pd.read_excel(r'词云样本.xlsx','a+',encoding='utf-8')报错withopen(path,"rb")asf:FileNotFoundError:[Errno2]Nosuchfileordirectory:'词云样本.xlsx'参考技术A相对路径问题先试绝对路径 查看详情

npm安装过程中报错解决

安装:npm install -g truffle下述错误解决方式:npmconfigsetstrict-sslfalse 查看详情

ros中报错总结

启动roscore后报错:原因是我把一个功能包的配置文件-package.xml的内容作了修改,有的地方没有改对,因此把配置文件改回来,如果改不回来就把整个功能包删除再运行即可。  查看详情

如何解决lodrunner中报错关于error-10489

如何解决LodRunner中报错关于Error-10489:Exceptionwasraisedwhencallingper-thread-terminatefunction": 关键词:原创 如何 解决 lodrunner 中 报错关于 error 10489exception raised wh 查看详情

java单元测试junit中报错

java.lang.IllegalStateException:FailedtoloadApplicationContextatorg.springframework.test.context.CacheAwareContextLoaderDelegate.loadContext(CacheAwareContextLoaderDelegate.java:99)atorg.springframewo 查看详情

ios中报错:mutatingmethodsenttoimmutableobject

今天我在切换账号登录,获取用户信息时,程序崩溃,报错:mutatingmethodsenttoimmutableobject当我设置全局断点进行调试时,这个就是给我们所报错的方法,并打印报错信息这是我们所调用的方法的地方,此时self.msgDict是不可变的字... 查看详情

centos中报错aptcommandnotfound

先说结论:在centos下用yum install xxxyum和apt-get的区别:一般来说著名的linux系统基本上分两大类:RedHat系列:Redhat、Centos、Fedora等Debian系列:Debian、Ubuntu等RedHat 系列常见的安装包格式 rpm包,安装 查看详情

webpack调用vue中报错,[wds]disconnected!解决方法

index.html页面中报错[WDS]Disconnected!原因:config.js中的host:‘0.0.0.0’,改为host:‘127.0.0.1’,不需要重新启动,刷新页面问题解决。 查看详情

webpack调用vue中报错,[wds]disconnected!解决方法

index.html页面中报错[WDS]Disconnected!原因:config.js中的host:‘0.0.0.0’,改为host:‘127.0.0.1’,不需要重新启动,刷新页面问题解决。 查看详情

工作流activity5开发过程中报错

org.activiti.engine.ActivitiException:deployment‘1‘didn‘tputprocessdefinition‘contractAcceptianceMainFlow:1:29‘inthecache atorg.activiti.engine.impl.persistence.deploy.DeploymentManager.resolveProcess 查看详情

httpclient在androidstudio中报错

问题:Eclipse项目中用到org.apache.http包中的相关类,例如HttpClient,当搬到AndroidStudio发现程序报错“Error:(10,23)错误:程序包org.apache.http不存在”等问题解决方法:(很简单)在build.gradle中添加 useLibrary'org.a... 查看详情

greendao在qigsaw中报错couldnotinitdaoconfig(代码片段)

报错org.greenrobot.greendao.DaoException:CouldnotinitDAOConfig场景使用qigsaw宿主模块依赖greenDAO插件模块使用了greenDAO插件模块使用greenDAO报错:CouldnotinitDAOConfig原因greenDAO源码中通过反射的方式去调用Properties类宿主模块加载greenDAO的ClassLo 查看详情

greendao在qigsaw中报错couldnotinitdaoconfig(代码片段)

报错org.greenrobot.greendao.DaoException:CouldnotinitDAOConfig场景使用qigsaw宿主模块依赖greenDAO插件模块使用了greenDAO插件模块使用greenDAO报错:CouldnotinitDAOConfig原因greenDAO源码中通过反射的方式去调用Properties类宿主模块加载greenDAO的ClassLo 查看详情

idea中报错“cannotresolvesymboltodf”,但编译正确可以运行

问题:  在IDEA中,无法识别同一个package里的其他类,将其显示为红色,但是compile没有问题  解决方法如下:   点击菜单中的“File”->“InvalidateCaches/Restart”,  然后点击对话框中的“InvalidateandRestart”,清空cach... 查看详情

半年中win2008r2中报错,期间服务器两次重启,如图

半年中win2008r2中报错,期间服务器两次重启,如图求教参考技术A去看看dhcpserver的配置,可能是审计功能没有配置好追问怎么看,不太清楚😓 查看详情

unittest中报错:attributeerror:'testlogin'objecthasnoattribute'driver'解决方法

源代码如下:更改后:执行成功。 查看详情

pycharm中报错:importerror:nomodulenamed'skimage'

pycharm中直接setting是没办法成功的,会提示isrequiedC++bool.....先进入那个页面安装好需要的tools,这个安装比较慢:http://landinghub.visualstudio.com/visual-cpp-build-tools 然后进入当前项目的env:然后通过命令行进入:然后就安装成功了&nbs... 查看详情