我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python中报错"json.decod

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python中报错

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

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python中报错"json.decod

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python中报错"json.decod

在学习python语言中用json库解析网络数据时,我遇到了两个编译错误:json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes:和js
2023-01-31

python报错

supervisor的错误日志如下:Traceback (most recent call last):  File "/home/himalayas/owengine/owprice/server.py", line 10, in
2023-01-31

Python报错:UnicodeDeco

python读取文件时提示:UnicodeDecodeError: 'gbk' codec can't decode byte 0xaa in position 82: illegal multibyte sequence解决办法:例如,错
2023-01-31

Saltstack 报错 python-

执行saltstack 报错一下信息根据报错信息修改python文件#若遇报错1#Starting salt-master daemon: /usr/lib64/python2.6/site-packages/Crypto/Util/num
2023-01-31

python 报错 Using depr

今天在做python 脚本练习的时候,因为是复制网上代码来学习,运行脚本时遇到 python 提示如下这一行报错代码:wxPyDeprecationWarning: Using deprecated class PySimpleApp.解决
2023-01-31

python中报runfile错误怎么解决

在Python中,"runfile"错误通常表示您正在尝试运行一个不存在或无法访问的文件。要解决此问题,您可以尝试以下几种方法:确保文件存在:检查您尝试运行的文件是否存在于您指定的路径中。您可以使用绝对路径或相对路径来指定文件。检查文件权限
2023-10-24

python路径中文报错如何解决

在Python路径中包含中文字符时,可能会遇到编码错误的问题。以下是一些解决方法:1. 使用Unicode字符串:将路径字符串转换为Unicode字符串,以确保正确的编码。例如:```pythonpath = u'中文路径'```2. 使用
2023-09-25

如何解决Python中的所有报错

本篇内容介绍了“如何解决Python中的所有报错”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!前言首先,让我们来看看Python中最常见的报
2023-07-05

python中ffmpy安装报错怎么解决

当在Python中安装ffmpy时,如果遇到报错,可以尝试以下解决方法:安装依赖库:确保已经安装了ffmpeg:在命令行中运行ffmpeg,如果能正常运行则表示已经安装。安装ffmpy依赖的Python库:运行pip install nu
python中ffmpy安装报错怎么解决
2024-02-29

python中timeout使用报错怎么解决

在Python中使用timeout时常见的错误可能是超时异常引起的,可以通过捕获异常并处理来解决。以下是一个示例代码:import timeimport signalclass TimeoutError(Exception):passd
python中timeout使用报错怎么解决
2024-03-11

python中关于中文报错的解决办法

对于像我这样刚接触python的人来说,很可能在代码中输入中文就会出现报错情况,比如说我写这样一个小代码:a=raw_input("请输入:")printa然后保存为:c.py运行:File"c.py",line1SyntaxError:N
2023-01-31

python 加载excel报错

from pandas import Series, DataFrameimport pandas as pdimport numpy as npimport osimport sysreload(sys)sys.setdefultenco
2023-01-31

python 安装readline报错

由于python的命令补全需要使用到readline模块,在安装readline模式时,提示如下错误:/usr/bin/ld: cannot find -lncursescollect2: ld returned 1 exit status
2023-01-31

安装MySQL-python报错

_mysql.c: 在函数‘DL_EXPORT’中:    _mysql.c:3058: 错误:expected declaration specifiers before ‘init_mysql’    _mysql.c:3166: 错误
2023-01-31

Python中怎么处理常见报错问题

这篇文章主要介绍Python中怎么处理常见报错问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.首先是常见的语法错误。2.然后是基础语法中的常见异常。3.最后是操作文件过程中的常见异常,这部分也是重难点知识。这是
2023-06-26

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录