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

项目场景:

项目场景: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文件是否规范,再进一步分析

你可能感兴趣的:(Python,数据处理,json,python)