广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python自定义对象转json、jso
  • 418
分享到

Python自定义对象转json、jso

自定义对象Python 2023-01-31 07:01:19 418人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

自定义对象转JSON:自己探索出来的,直接看下面简单的例子吧。#自定义对象转换成json import json #自定义对象 class C: key1=list key2=str key3=int

自定义对象转JSON:自己探索出来的,直接看下面简单的例子吧。

#自定义对象转换成json

import json

#自定义对象
class C:
    key1=list
    key2=str
    key3=int
    key4=tuple 
    def __init__(self,key1,key2,key3,key4):
        self.key1=key1
        self.key2=key2
        self.key3=key3
        self.key4=key4
        
#实例化自定义类
c=C([1,2,3],'str',0,('yuanzu','元组'))

#json.dumps方法不能对自定义对象直接序列化,首先把自定义对象转换成字典

overdict = c.__dict__

# 此时就可以用json.dumps序列化了
result=json.dumps(overdict, ensure_ascii=False)
print(result)
print(type(result))

二、Json 转自定义对象:暂时查不到 Json 转 python 对象的傻瓜办法,这里贴一个网友的来自:

https://blog.csdn.net/TaiJi1985/article/details/51344879

发现更简单的办法继续分享。

# 定制类
import time

class D(object):

    def __init__(self,map):
        self.map = map

    def __setattr__(self, name, value):
        if name == 'map':
             object.__setattr__(self, name, value)
             return True
        print ('set attr called ',name,value)
        self.map[name] = value

    def __getattr__(self,name):
        v = self.map[name]
        if isinstance(v,(dict)):
            return (DictObj(v))
        if isinstance(v, (list)):
            r = []
            for i in v:
                r.append(DictObj(i))
            return (r)
        else:
            return (self.map[name])
        
    def __getitem__(self,name):
        return (self.map[name])

if __name__ == '__main__':

      # json转换成字典
      import json
      #实际上JSON就是Python中的字符串,所以在这里首先定义一个字符串充当从网络请求中得到的json
      json_obj='{"key1":[1,2,3],"key2":"str2"}' 
      # 注意json键值对的边界符只能用双引号
      t=json.loads(json_obj)

      # 字典转换成自定义对象
      model = D(t)
      print (model.key2)

三、更新Json转自定义字符串:

import json

class Ook():
    name=str
    def __init__(self, d):
        self.__dict__ = d

if __name__ == '__main__':
    
    data = {'name' : 'ACME','shares' : 100,'price' : {'name' : 'ACME'}}
    json_str = json.dumps(data) 
    result = json.loads(json_str, object_hook=Ook)
    print(result.name)
    print(result.shares)
    print(result.price.name)


--结束END--

本文标题: Python自定义对象转json、jso

本文链接: https://www.lsjlt.com/news/190821.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • Python自定义对象转json、jso
    自定义对象转Json:自己探索出来的,直接看下面简单的例子吧。#自定义对象转换成json import json #自定义对象 class C: key1=list key2=str key3=int ...
    99+
    2023-01-31
    自定义 对象 Python
  • jquery如何定义json对象
    在jquery中定义json对象的方法:1.新建html项目,引入jquery;2.使用json字符串定义json对象;3.使用JSON.parse方法解析json对象;具体步骤如下:首先,新建一个html项目,并在项目中引入jquery;...
    99+
    2022-10-09
  • java怎么定义json对象
    在Java中,可以使用`JSONObject`类来定义JSON对象。首先,需要导入`org.json.JSONObject`包。然后...
    99+
    2023-08-26
    java json
  • 怎么用JSON定义sites对象
    这篇文章主要介绍“怎么用JSON定义sites对象”,在日常操作中,相信很多人在怎么用JSON定义sites对象问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用JSON定...
    99+
    2022-10-19
  • ADO.NET如何自定义对象
    这篇文章主要讲解了“ADO.NET如何自定义对象”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ADO.NET如何自定义对象”吧!ADO.NET实体框架提供了相应的工具,以便根据 实体数据模型...
    99+
    2023-06-17
  • JavaScript怎么自定义对象
    这篇文章主要介绍“JavaScript怎么自定义对象”,在日常操作中,相信很多人在JavaScript怎么自定义对象问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaSc...
    99+
    2022-10-19
  • JSON对象未定义错误如何解决
    当出现"JSON对象未定义"错误时,通常是因为JavaScript代码中没有正确引入JSON对象或者JSON对象不可用。要解决这个问...
    99+
    2023-08-16
    JSON
  • Python对象转JSON字符串的方法
    本文实例讲述了Python对象转JSON字符串的方法。分享给大家供大家参考,具体如下: import json class JSONObject(object): def __init__(self...
    99+
    2022-06-04
    字符串 对象 方法
  • JSON 对象未定义错误的解决方法
    要解决 JSON 对象未定义的错误,可以尝试以下几种方法:1. 确保引入了正确的 JSON 库: 在 JavaScript 中,要操...
    99+
    2023-08-15
    JSON
  • python对象怎么转换为json字符串
    要将Python对象转换为JSON字符串,可以使用json模块的`dumps()`函数。下面是一个示例:```pythonimpor...
    99+
    2023-09-13
    python json
  • python中将字符串转为json对象并
    string =" {  "status": "error",  "messages": ["Could not find resource or o...
    99+
    2023-01-31
    字符串 中将 对象
  • 如何在Python中把对象转换为JSON
    今天就跟大家聊聊有关如何在Python中把对象转换为JSON,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。python可以做什么Python是一种编程语言,内置了许多有效的工具,Py...
    99+
    2023-06-14
  • Python进阶:自定义对象实现切片功能
    2018-12-31 更新声明:切片系列文章本是分三篇写成,现已合并成一篇。合并后,修正了一些严重的错误(如自定义序列切片的部分),还对行文结构与章节衔接做了大量改动。原系列的单篇就不删除了,毕竟也是有单独成篇的作用。特此声明,请阅读改...
    99+
    2023-01-30
    进阶 自定义 切片
  • Laravel如何自定义验证对象
    这篇文章主要介绍“Laravel如何自定义验证对象”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Laravel如何自定义验证对象”文章能帮助大家解决问题。Laravel 5.5 将提供一个全新的自定...
    99+
    2023-07-04
  • JavaScript 自定义对象方法汇总
    目录一使用object创建对象二使用构造函数创建对象三字面量创建对象四this关键字this表示当前对象五基本数据类型和引用数据类型基本数据类型引用数据类型六闭包如何理解闭包?闭包的...
    99+
    2022-11-12
  • map插入自定义对象总结
    难道插入map还有什么讲究吗?我们且看map在STL中的定义方法:template <class Key, class T, class Compare = less<K...
    99+
    2022-11-15
    自定义对象
  • springboot自定义配置及自定义对象映射的全流程
    目录一、使用@Value注解获取(一个一个获取)1.1 使用方法1.2 举例说明二、自定义对象映射2.1 使用方法2.2 举例说明一、使用@Value注解获取(一个一个获取)1.1 ...
    99+
    2022-11-13
  • python怎么定义类和对象
    这篇“python怎么定义类和对象”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“python怎么定义类和对象”文章吧。定义简...
    99+
    2023-06-29
  • python对象方法怎么定义
    这篇文章主要讲解了“python对象方法怎么定义”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python对象方法怎么定义”吧!概念在类中,对象调用的函数称为对象方法,一般也称为方法。定义格...
    99+
    2023-06-30
  • 怎么定义Python面向对象
    本篇内容介绍了“怎么定义Python面向对象”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!面向对象类 - class对象class ...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作