欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實(shí)現(xiàn)class對(duì)象轉(zhuǎn)換成json/字典的方法

 更新時(shí)間:2016年03月11日 10:05:02   作者:Ruthless  
這篇文章主要介紹了python實(shí)現(xiàn)class對(duì)象轉(zhuǎn)換成json/字典的方法,結(jié)合實(shí)例形式分析了Python類(lèi)型轉(zhuǎn)換的相關(guān)技巧,需要的朋友可以參考下

本文實(shí)例講述了python實(shí)現(xiàn)class對(duì)象轉(zhuǎn)換成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對(duì)象轉(zhuǎn)換成Dict對(duì)象'''
  dict = {}
  dict.update(obj.__dict__)
  return dict
def convert_to_dicts(objs):
  '''把對(duì)象列表轉(zhuǎn)換為字典列表'''
  obj_arr = []
  for o in objs:
    #把Object對(duì)象轉(zhuǎn)換成Dict對(duì)象
    dict = {}
    dict.update(o.__dict__)
    obj_arr.append(dict)
  return obj_arr
def class_to_dict(obj):
  '''把對(duì)象(支持單個(gè)對(duì)象、list、set)轉(zhuǎn)換成字典'''
  is_list = obj.__class__ == [].__class__
  is_set = obj.__class__ == set().__class__
  if is_list or is_set:
    obj_arr = []
    for o in obj:
      #把Object對(duì)象轉(zhuǎn)換成Dict對(duì)象
      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)

運(yùn)行結(jié)果如下:

-----------
{'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'}]

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Python docx庫(kù)用法示例分析

    Python docx庫(kù)用法示例分析

    這篇文章主要介紹了Python docx庫(kù)用法,結(jié)合實(shí)例形式分析了docx庫(kù)相關(guān)的docx文件讀取、文本添加、格式操作,需要的朋友可以參考下
    2019-02-02
  • Django與遺留的數(shù)據(jù)庫(kù)整合的方法指南

    Django與遺留的數(shù)據(jù)庫(kù)整合的方法指南

    這篇文章主要介紹了Django與遺留的數(shù)據(jù)庫(kù)整合的方法指南,Django是最具人氣的Python開(kāi)發(fā)框架,需要的朋友可以參考下
    2015-07-07
  • Python中的數(shù)據(jù)分析詳解

    Python中的數(shù)據(jù)分析詳解

    這篇文章主要介紹了Python中的數(shù)據(jù)分析詳解,對(duì)數(shù)據(jù)進(jìn)行分析,數(shù)據(jù)分析是指根據(jù)分析目的,用適當(dāng)?shù)慕y(tǒng)計(jì)分析方法及工具,對(duì)收集來(lái)的數(shù)據(jù)進(jìn)行處理與分析,提取有價(jià)值的信息,發(fā)揮數(shù)據(jù)的作用,需要的朋友可以參考下
    2023-07-07
  • 使用python將一個(gè)文件分配到指定的多個(gè)文件夾

    使用python將一個(gè)文件分配到指定的多個(gè)文件夾

    這篇文章主要為大家詳細(xì)介紹了如何使用python將一個(gè)文件分配到指定的多個(gè)文件夾,也就說(shuō)將一個(gè)文件分配到一個(gè)母文件夾下的所有的子文件夾,感興趣的可以了解下
    2025-01-01
  • 使用python serial 獲取所有的串口名稱(chēng)的實(shí)例

    使用python serial 獲取所有的串口名稱(chēng)的實(shí)例

    今天小編就為大家分享一篇使用python serial 獲取所有的串口名稱(chēng)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • Python 通過(guò)URL打開(kāi)圖片實(shí)例詳解

    Python 通過(guò)URL打開(kāi)圖片實(shí)例詳解

    這篇文章主要介紹了Python 通過(guò)URL打開(kāi)圖片實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • python pygame模塊編寫(xiě)飛機(jī)大戰(zhàn)

    python pygame模塊編寫(xiě)飛機(jī)大戰(zhàn)

    這篇文章主要為大家詳細(xì)介紹了python pygame模塊編寫(xiě)飛機(jī)大戰(zhàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Python實(shí)現(xiàn)印章代碼的算法解析

    Python實(shí)現(xiàn)印章代碼的算法解析

    這篇文章主要為大家介紹了Python印章代碼實(shí)現(xiàn)算法解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • Bokeh:Python交互式可視化的利器詳解

    Bokeh:Python交互式可視化的利器詳解

    這篇文章主要介紹了Bokeh:Python交互式可視化的利器,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • python中shell執(zhí)行知識(shí)點(diǎn)

    python中shell執(zhí)行知識(shí)點(diǎn)

    在本篇文章里小編給大家分享的是關(guān)于python中shell執(zhí)行知識(shí)點(diǎn)內(nèi)容,需要的朋友們可以學(xué)習(xí)下。
    2020-05-05

最新評(píng)論