当前位置: 首页 > news >正文

百度恶意屏蔽网站wordpress 渗透框架

百度恶意屏蔽网站,wordpress 渗透框架,专门做优惠券的网站,凡科免费建微信小程序网站【Python序列化】TypeError: Object of type xxx is not JSON serializable问题的解决方案 尤其是type 为自定义类时。 问题现象 报错如下 TypeError: Object of type xxx is not JSON serializable根因分析 对于自定义的对象,我们也可以通过继承JSONEncoder类…

【Python序列化】TypeError: Object of type xxx is not JSON serializable问题的解决方案

尤其是type 为自定义类时。

问题现象

报错如下

TypeError: Object of type xxx is not JSON serializable

根因分析

对于自定义的对象,我们也可以通过继承JSONEncoder类实现它的序列化;但该方法转换后为字符串无法再次dumps,只是这个方法比较通用不用每个类单独写2dict方法。

import json#定义一个UserOnlineclass UserOnline(object):def __init__(self, userName, ipaddr, tokenId, deptName, loginLocation, browser, os, loginTime):self.userName = userNameself.ipaddr = ipaddrself.tokenId = tokenIdself.deptName = deptNameself.loginLocation = loginLocationself.browser = browserself.os = osself.loginTime = loginTime#定义一个转换函数,将UserOnline类换成json可以接受的类型;但该方法转换后为字符串无法再次dumps
def UserOnline2dict(std):return {'dm': std.userName,'ipaddr': std.ipaddr,'tokenId': std.tokenId,'deptName': std.deptName,'loginLocation': std.loginLocation,'browser': std.browser,'os': std.os,'loginTime': std.loginTime}# 对于自定义的对象,我们也可以通过继承JSONEncoder类实现它的序列化;但该方法转换后为字符串无法再次dumps,只是这个方法比较通用不用每个类单独写2dict方法
# 该方法转换后为字符串无法再次dumps,解决方案就是再次dumps序列化之前先loads一次还原为dict类型
class MyJSONEncoder(json.JSONEncoder):def default(self, obj):d = {}# d['__class__'] = obj.__class__.__name__# d['__module__'] = obj.__module__d.update(obj.__dict__)return d

究其根因该方法转换后为字符串再次dumps里面又嵌套了一层字符串,解析时就无法解析里面嵌套的那一层

解决方案

所以解决方案就是再次dumps序列化之前先loads一次还原为dict类型。

数据生成代码如下:

    datas.append(cUserOnline)# return datas# datas = json.dumps(datas, default=UserOnline2dict)return json.dumps(datas, cls=MyJSONEncoder)

HTTP响应打包数据处理代码如下:

    # 因为reData已经被dumps序列化一次了,如果再次dumps序列化后读出来每个元素都是字符串而不是dict;故此再次dumps序列化之前先loads(reData),这样就满足需求了。load_Data = json.loads(reData)dump_Data = json.dumps({'code': 200, 'msg': msg, 'rows': load_Data, 'total': len(reData)})return dump_Data
http://www.dtcms.com/a/582638.html

相关文章:

  • 算法数学---差分数组(Difference Array)
  • 石家庄城乡建设局网站服装定制品牌有哪些
  • PrettyZoo:优雅易用的 ZooKeeper 可视化管理工具
  • Trae下架Claude,但Vibe Coding之路才刚刚开始
  • 哪些行业网站推广做的多上海制作网站开发
  • 二叉树的前序遍历详解(图文并茂,C语言实现)
  • 彩票网站开发需要多少钱2020 惠州seo服务
  • 建设部网站施工合同版本网络营销推广策划书
  • Codeforces Global Round 30 (Div. 1 + Div. 2)
  • pugixml使用说明
  • 贵阳市建设厅官方网站南京企业网站开发公司
  • 原创文章对网站的好处抢注域名网站
  • 一本通网站1122题:计算鞍点
  • 网站的静态页面谁做微信模板编辑器
  • WinSCP无法发连接CenOS7,解决
  • 动力无限网站效果好不好美食网站开发毕业设计
  • mongodb与redis在聊天场景中的选择
  • MVCC核心原理解密:从隐藏字段到版本链的完整解析
  • 全球美业新纪元:数字化管理如何重塑美容与美发行业的未来
  • 天津城市建设网站丽水网站开发公司
  • 【算法题】滑动窗口求最值
  • wordpress 无广告视频插件下载滨州seo排名
  • el-upload实现文件上传预览
  • 嵌入式Linux C语言程序设计九
  • Git 分支流程(合并分支)
  • idea可以做网站吗最好的网站代运营公司
  • BSS供应商:电信与金融领域的幕后支撑者
  • 精通网站开发书籍wordpress 很占内存
  • 找个男做那个视频网站好东营网站建设哪家更好
  • Linux/Windows 安装miniforge