Json读取错误[整数加点不是正确格式]

在Python中读取Json文件时遇到`json.decoder.JSONDecodeError: Expecting ',' delimiter`错误。问题源于Json文件中1.的表示不合规,根据Json规范,数字必须要有小数点后至少一位数字。解决方案是将1.更改为1.0或1。在处理Json数据时,确保文件格式正确至关重要。
摘要由CSDN通过智能技术生成

项目场景:

项目场景:Json作为一种数据传输方式,在很多场景都得到了应用。Python也提供了处理Json文件的工具:
Python读取Json文件报错:
**json.decoder.JSONDecodeError: Expecting ',' delimiter: line 9 column 547 (char 690)**

问题描述

提示:python读取Json文件报错
Python读取以下Json文件报错:

{
    "initial_params": {
        "_complex": false,
        "_data": [
        0.4997993 ,  1.   ,  0.2790356 ,  1.0
        ]
    }
}
        with open(file_name, 'r') as f:
            data = json.load(f)

原因分析:

Json文件的读取相对很简单,怎么会出现错误呢?
后面把Json文件放在网上去检查是否符合Json格式,发现了问题:
Json在线格式检查
INVALID (RFC 8259)
RFC 8259对数字的要求
6.数字
——数字的表示与大多数编程语言中使用的表示类似。一个数字用十进制数字以基数10表示。它包含一个整数分量,其前缀可以是可选减号,后面可以是分数部分和/或指数部分。不允许前导零。
——·分数部分是小数点,后面跟着一个或多个数字。
——指数部分以大写或小写字母E开头,后面可以是正负号。E和可选符号后面跟着一个或多个数字。
——不允许使用【不能用下面的语法表示的】数值(如Infinity和NaN)。

可以看出Json中的数据1.的表示方式不符合Json规范。

解决方案:

将Json文件中1.改为1.0或1即可。

出现读取Json文件失败,首先检查一下Json文件是否规范,再进一步分析

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 要读取和修改JSON文件的格式,可以使用Pythonjson模块。首先,可以使用open函数打开JSON文件,并使用json.load函数将文件内容加载为Python字典或列表。然后,可以对字典或列表进行修改。最后,可以使用json.dump函数将修改后的内容写回到JSON文件中。以下是一个示例代码: ```python import json # 打开JSON文件并加载内容为字典 with open('data.json', 'r') as f: data = json.load(f) # 修改字典中的内容 data\['key'\] = 'value' # 将修改后的内容写回JSON文件 with open('data.json', 'w') as f: json.dump(data, f) ``` 在这个示例中,我们首先使用open函数打开名为data.jsonJSON文件,并使用json.load函数将文件内容加载为一个字典。然后,我们修改了字典中的某个键值对。最后,我们使用json.dump函数将修改后的内容写回到data.json文件中。请注意,这只是一个简单的示例,实际操作中可能需要根据具体的JSON文件结构进行相应的修改。 #### 引用[.reference_title] - *1* [使用 Python 读取 json 格式文件并查重](https://blog.csdn.net/w_naKing/article/details/126307409)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [【Python】使用Python读取JSON文件中的内容](https://blog.csdn.net/jylsrnzb/article/details/131458092)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值