• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > python实现class对象转换成json/字典的方法

python实现class对象转换成json/字典的方法

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了python中class,python class,python class用法,python import class,python classmethod等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了python实现class对象转换成json字典的方法。分享给大家供大家参考,具体如下:

# -*- encoding: UTF-8 -*-
class Student:
  name = ''
  age = 0
  def __init__(self, name, age):
    self.name = name
    self.age = age
def convert_to_dict(obj):
  '''把Object对象转换成Dict对象'''
  dict = {}
  dict.update(obj.__dict__)
  return dict
def convert_to_dicts(objs):
  '''把对象列表转换为字典列表'''
  obj_arr = []
  for o in objs:
    #把Object对象转换成Dict对象
    dict = {}
    dict.update(o.__dict__)
    obj_arr.append(dict)
  return obj_arr
def class_to_dict(obj):
  '''把对象(支持单个对象、list、set)转换成字典'''
  is_list = obj.__class__ == [].__class__
  is_set = obj.__class__ == set().__class__
  if is_list or is_set:
    obj_arr = []
    for o in obj:
      #把Object对象转换成Dict对象
      dict = {}
      dict.update(o.__dict__)
      obj_arr.append(dict)
    return obj_arr
  else:
    dict = {}
    dict.update(obj.__dict__)
    return dict
stu = Student('zhangsan', 20)
print '-----------'
print convert_to_dict(stu)
print '-----------'
print convert_to_dicts([stu, stu])
print '-----------'
print class_to_dict(stu)
print '-----------'
print class_to_dict([stu, stu])
stua = Student('zhangsan', 20)
stub = Student('lisi', 10)
stu_set = set()
stu_set.add(stua)
stu_set.add(stub)
print class_to_dict(stu_set)

</div>

运行结果如下:

-----------
{'age': 20, 'name': 'zhangsan'}
-----------
[{'age': 20, 'name': 'zhangsan'}, {'age': 20, 'name': 'zhangsan'}]
-----------
{'age': 20, 'name': 'zhangsan'}
-----------
[{'age': 20, 'name': 'zhangsan'}, {'age': 20, 'name': 'zhangsan'}]
[{'age': 10, 'name': 'lisi'}, {'age': 20, 'name': 'zhangsan'}]

</div>

希望本文所述对大家Python程序设计有所帮助。

</div>

您可能想查找下面的文章:

  • python实现class对象转换成json/字典的方法
  • python实现class对象转换成json/字典的方法
  • python基础教程之类class定义使用方法
  • python基础教程之类class定义使用方法

相关文章

  • 在Python的Django框架中创建和使用模版
  • Python的“二维”字典 (two-dimension dictionary)定义与实现方法
  • python查询sqlite数据表的方法
  • Python中转换角度为弧度的radians()方法
  • Python中使用urllib2防止302跳转的代码例子
  • python3简单实现微信爬虫
  • Python与Redis的连接教程
  • 结合Python的SimpleHTTPServer源码来解析socket通信
  • python实现解数独程序代码
  • Python中__init__.py文件的作用详解

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • 使用Python的Tornado框架实现一个Web端图书展示页面
    • 在Python编程过程中用单元测试法调试代码的介绍
    • python操作MongoDB基础知识
    • python批量同步web服务器代码核心程序
    • Python使用Socket(Https)Post登录百度的实现代码
    • python利用Guetzli批量压缩图片
    • Python多进程同步Lock、Semaphore、Event实例
    • Python中编写ORM框架的入门指引
    • 详解Python中的各种函数的使用
    • 用Python代码来绘制彭罗斯点阵的教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有