记一个JSON返回数据的bug
记一个JSON返回数据的bug:‘Object of type int64 is not JSON serializable’
我在打包数组进行json数据返回时,有一个参数是numpy数组里计算出来的,类型为int64,直接进行json打包会报错
提示(‘Object of type int64 is not JSON serializable’,)
,查阅了一些资料,这是因为 JSON 标准规定只支持有限的数据类型,而 int64 不是其中之一。
然后我又搜了一下,python的数据类型,int64和int有什么区别,int64在 什么情况下会出现,得到如下答案:
在 Python 中,int 是整数的基本数据类型,而 int64 是 numpy 库中的数据类型,用于表示 64 位整数。
int 是 Python 内置的整数类型,它可以表示任意大小的整数。在大多数情况下,我们使用的整数都是 int 类型。
而 int64 是 numpy 库中的数据类型,用于处理需要精确表示 64 位整数的情况。int64 类型的整数范围更大,可以表示更大的整数值,而不会溢出。
通常情况下,我们不会直接使用 int64 类型,除非需要处理大整数或者需要与 numpy 库进行交互时。在一些科学计算和数据分析的场景中,numpy 库常常会使用 int64 类型来表示整数数据。
需要注意的是,Python 的内置整数类型 int 在大多数情况下可以满足我们的需求,而且更常见和易于使用。只有在特定的情况下,比如需要处理大整数或者与 numpy 库进行交互时,才需要使用 int64 类型。
后来我把那段代码进行格式转化,转换成float类型,才没有报这个错误了
下面附上代码片段:
for dimension in dimension_list:element_df = result.loc[result['dimension'] == dimension].reset_index(drop=True)dimension_dict = {}dimension_dict['dimension'] = dimensiondimension_dict['JS'] = element_df['js_sum'].loc[0]dimension_dict['EP'] = element_df['ep_sum'].loc[0]dimension_dict['element'] = element_df[['elements', 'surprise', 'EP']].reset_index(drop=True).to_dict(orient='records')result_list.append(dimension_dict)json_str["rcode"] = 0json_str["desc"] = "定位根因success"json_str["dimension"] = result_list
修改后的:
for dimension in dimension_list:element_df = result.loc[result['dimension'] == dimension].reset_index(drop=True)dimension_dict = {}dimension_dict['dimension'] = dimensiondimension_dict['JS'] = float(element_df['js_sum'].loc[0])dimension_dict['EP'] = float(element_df['ep_sum'].loc[0])dimension_dict['element'] = element_df[['elements', 'surprise', 'EP']].reset_index(drop=True).to_dict(orient='records')result_list.append(dimension_dict)json_str["rcode"] = 0json_str["desc"] = "定位根因success"json_str["dimension"] = result_list
相关文章:
记一个JSON返回数据的bug
记一个JSON返回数据的bug:‘Object of type int64 is not JSON serializable’ 我在打包数组进行json数据返回时,有一个参数是numpy数组里计算出来的,类型为int64,直接进行json打包会报错 提示(‘Object of type int64 is not JSON serializa…...
毫米波雷达模块技术革新:在自动驾驶汽车中的前沿应用
随着自动驾驶技术的快速发展,毫米波雷达模块的技术革新成为推动这一领域的关键因素之一。本文将深入研究毫米波雷达模块技术的最新进展,并探讨其在自动驾驶汽车中的前沿应用。 毫米波雷达模块的基本原理 解释毫米波雷达模块的基本工作原理,强…...
优秀数据库模式迁移工具的发展历程
数据库模式迁移可能是应用程序开发中风险最大的领域——因为这是一个困难的、有风险的和痛苦的过程。数据库模式迁移工具的存在是为了减轻这种痛苦,并且已经取得了长足的进步:从基本的CLI工具到GUI工具,从简单的SQL GUI客户端到一体化协作数据…...
【深度学习】数据集最常见的问题及其解决方案
简介 如果您还没有听过,请告诉您一个事实,作为一名数据科学家,您应该始终站在一个角落跟你说:“你的结果与你的数据一样好。” 尝试通过提高模型能力来弥补糟糕的数据是许多人会犯的错误。这相当于你因为原来的汽车使用了劣质汽…...
Excel文件带有密码的只读模式,如何设置?
Excel带有密码的除了打开密码和工作表保护以外,其实还有一种可以设置密码的方法,今天给大家分享如何设置带有密码的只读模式。 打开excel文件,将文件进行【另存为】设置,然后停留在保存路径的界面中,我们点击下面的工…...
【Qt之json文件】json文件介绍及相关读写类介绍、示例
JSON介绍 JSON(JavaScript Object Notation)是一种源自Javascript的编码对象数据的轻量级的数据交换格式,易于理解和编写,JSON但现在已广泛用作互联网上的数据交换格式。 Qt提供了处理JSON数据的支持。Qt中的JSON支持提供了一个易…...
arp 隔离
目录 问题查找解决方式参考 问题 linux 在使用双网卡系统时,当这两个不同网段的网口接到同一个交换机上,会出现 eth0 的 arp 请求,会在 eth1 上收到并回复,相当于自己检测到了自己的 ip。 查找 linux 的底层,默认情…...
数据结构与算法(文章链接汇总)
数据结构与算法(一):概述与复杂度分析 数据结构与算法(二):数组与链表 数据结构与算法(三):栈与队列 数据结构与算法(四):哈希表 数据…...
代码随想录算法训练营第五十九天 | 647. 回文子串、516.最长回文子序列
647. 回文子串 链接: 代码随想录 (1)代码 516.最长回文子序列 链接: 代码随想录 (1)代码...
非关系型数据库-Redis
一、缓存概念 缓存是为了调节速度不一致的两个或多个不同的物质的速度,在中间对速度较慢的一方起到加速作用,比如CPU的一级、二级缓存是保存了CPU最近经常访问的数据,内存是保存CPU经常访问硬盘的数据,而且硬盘也有大小不一的缓存…...
HTML基本讲解与使用
目录 html的由来: 什么是HTML: HTML的主要特点: HTML文档结构: HTML元素: HTML元素属性: 文本和格式化: 链接和图像: 列表: 表格: 表单: 嵌套和结构: HTML注释: 样式…...
linux uname详解 -s -r -a 查看内核版本
简介 uname命令用于显示操作系统信息,例如内核版本、主机名、处理器类型等 uname常用的有-a,-r,-rs 参数 --help 显示帮助。-a 或--all 显示全部信息,包括内核名、主机名、内核版本、处理器类型和硬件架构等…...
Linux常用命令——cmp命令
在线Linux命令查询工具 cmp 比较两个文件是否有差异 补充说明 cmp命令用来比较两个文件是否有差异。当相互比较的两个文件完全一样时,则该指令不会显示任何信息。若发现有差异,预设会标示出第一个不通之处的字符和列数编号。若不指定任何文件名称或是…...
C语言之排序
1.冒泡排序 冒泡排序就不多说了,只需要两层循环嵌套,两两比较确定相对正确的顺序即可。 2.插入排序 插入排序的思想就是每一次向后寻找一个再将其与前面有序的部分进行对比,寻找合适位置插入。 这里关键要避免让前移超出目前读取的数字&…...
GitHub-使用 Git工具 创建密钥id_rsa.pub
快速导航 步骤1 打开Git Bash步骤2 输入指令【ssh-keygen】步骤3 打开创建的公钥文件步骤4 复制其中所有内容步骤5 打开GitHub中的Setting界面步骤6 添加SSH keys 步骤1 打开Git Bash 打开Git Bash 工具 步骤2 输入指令【ssh-keygen】 输入指令【ssh-keygen】,并…...
C++多重、多层、分层继承
在本文中,您将学习C 编程中的不同继承模型:带有示例的多继承,多层和分层继承。 继承是面向对象编程语言的核心功能之一。它允许软件开发人员从现有的类派生一个新的类。派生类继承基类(现有类)的功能。C 编程中有多种…...
ThingsBoard的数据分析-自定义节点来订阅kafka stream的消息
1、概述 在ThingsBoard官方文档中有说明:ThingsBoard 规则引擎支持对传入遥测数据的基本分析,例如阈值交叉。规则引擎背后的想法是提供基于设备属性或数据本身将数据从物联网设备路由到不同插件的功能。 然而,大多数现实生活中的用例也需要高级分析的支持:机器学习、预测分…...
Python WSGI HTTP Server - Gunicorn
基本概念 Gunicorn,也称为“Green Unicorn”,是一个Python WSGI HTTP Server,用于运行Python Web应用程序。WSGI(Web Server Gateway Interface)是Python应用程序和Web服务器之间的一个接口,允许应用程序和…...
[论文笔记]GPT-2
引言 今天继续GPT系列论文, 这次是Language Models are Unsupervised Multitask Learners,即GPT-2,中文题目的意思是 语言模型是无监督多任务学习器。 自然语言任务,比如问答、机器翻译、阅读理解和摘要,是在任务相关数据集上利用监督学习的典型方法。作者展示了语言模型…...
第十三届蓝桥杯模拟赛第三期
A.填空题 问题描述 请问十六进制数 2021ABCD 对应的十进制是多少? 参考答案 539077581 import java.math.*; public class Main {public static void main(String[] args) {String strnew BigInteger("2021ABCD",16).toString(10);System.out.printl…...
00华夏之光永存:华为黄大年茶思屋难题揭榜第15期(无线领域难题第一期)·题目篇
华夏之光永存:华为黄大年茶思屋难题揭榜第15期(无线领域难题第一期)题目篇 一、引言:无线领域难题,关乎华为全球竞争力与6G话语权 在全球通信技术从5.5G向6G演进的关键期,无线通信作为华为核心主业…...
2024机器学习初学者必备工具与学习路线
1. 为什么初学者需要掌握这些机器学习工具?2024年对于机器学习初学者来说是个绝佳的入门时机。三年前我刚接触这个领域时,光是搭建开发环境就折腾了一周。现在这些开源工具不仅安装简单,还提供了完整的教程和社区支持。掌握它们就像获得了一套…...
AI短视频一键生成系统源码,对接Sora2、可灵、即梦等模型,实现低成本影视级短剧生产
温馨提示:文末有资源获取方式一、市场背景与技术选型根据最新行业数据,2025年国内短剧企业已近10万家,上半年市场规模突破600亿。随着Sora2、可灵、即梦等AI视频模型的快速迭代,传统影视创作的专业壁垒正在被打破。一套完整的AI短…...
非参数统计方法:原理、应用与实战指南
1. 非参数统计入门指南第一次接触非参数统计时,我被那些不依赖严格分布假设的方法深深吸引。与传统参数统计不同,这类方法就像一把瑞士军刀,在各种数据条件下都能保持稳健的表现。记得有次分析客户满意度数据时,遇到严重偏态分布&…...
如何开发Shuttle播放器插件:从入门到实战的完整指南
如何开发Shuttle播放器插件:从入门到实战的完整指南 【免费下载链接】Shuttle Shuttle Music Player 项目地址: https://gitcode.com/gh_mirrors/shut/Shuttle Shuttle Music Player是一款功能强大的开源音乐播放器,支持自定义插件扩展功能。本文…...
数据结构初涉----顺序表
有了我们之前共同学习的C做基础,我们本文开始学习数据结构,本文先从数据结构的基础-----顺序表开始介绍。顺序表的出现顺序表的基层原理其实就是数组,但是数组用来存放数据可以,遇到插入数据,删除数据这些操作时&#…...
老Mac升级最新macOS的终极免费方案:OpenCore Legacy Patcher完整教程
老Mac升级最新macOS的终极免费方案:OpenCore Legacy Patcher完整教程 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 你是否还在为老款Mac无法升级…...
C++26合约与模块(Modules)协同失效案例(#include <contract>未定义!):MSVC 19.42 / GCC 14.2双平台修复手册
更多请点击: https://intelliparadigm.com 第一章:C26合约编程实战教程 避坑指南 C26 正式引入 contract 关键字族([[expects:]], [[ensures:]], [[asserts:]]),为函数级契约提供标准化语法支持。与 C20 的 contract-…...
保姆级教程:在PVE虚拟机上安装黑群晖DSM,直通硬盘避坑指南
家庭虚拟化NAS搭建全攻略:PVE平台部署黑群晖DSM实战手册 在家庭和小型工作室场景中,NAS(网络附加存储)已成为数据管理的核心设备。而将NAS系统运行在虚拟化平台上,不仅能节省硬件成本,还能实现计算资源的灵…...
面试鸭全栈项目实战:React+Node.js+MongoDB构建面试刷题平台
1. 项目概述与核心价值最近几年,无论是校招还是社招,技术面试的“八股文”环节几乎成了标配。我自己也经历过这个阶段,深知那种面对海量、零散、质量参差不齐的面试题时的无力感。要么是到处搜罗面经,结果发现只有问题没有答案&am…...
