python實(shí)現(xiàn)class對(duì)象轉(zhuǎn)換成json/字典的方法
本文實(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ì)有所幫助。
- python中將字典轉(zhuǎn)換成其json字符串
- python將字符串轉(zhuǎn)換成json的方法小結(jié)
- Python對(duì)象轉(zhuǎn)換為json的方法步驟
- python 對(duì)象和json互相轉(zhuǎn)換方法
- 基于python實(shí)現(xiàn)把json數(shù)據(jù)轉(zhuǎn)換成Excel表格
- Python中xml和json格式相互轉(zhuǎn)換操作示例
- Python實(shí)現(xiàn)把json格式轉(zhuǎn)換成文本或sql文件
- 使用python把json文件轉(zhuǎn)換為csv文件
- 使用python將mysql數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換為json數(shù)據(jù)的方法
- Python中Json和其他類(lèi)型相互轉(zhuǎn)換的實(shí)現(xiàn)示例
相關(guān)文章
Django與遺留的數(shù)據(jù)庫(kù)整合的方法指南
這篇文章主要介紹了Django與遺留的數(shù)據(jù)庫(kù)整合的方法指南,Django是最具人氣的Python開(kāi)發(fā)框架,需要的朋友可以參考下2015-07-07
使用python將一個(gè)文件分配到指定的多個(gè)文件夾
這篇文章主要為大家詳細(xì)介紹了如何使用python將一個(gè)文件分配到指定的多個(gè)文件夾,也就說(shuō)將一個(gè)文件分配到一個(gè)母文件夾下的所有的子文件夾,感興趣的可以了解下2025-01-01
使用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í)例詳解的相關(guān)資料,需要的朋友可以參考下2017-06-06
python pygame模塊編寫(xiě)飛機(jī)大戰(zhàn)
這篇文章主要為大家詳細(xì)介紹了python pygame模塊編寫(xiě)飛機(jī)大戰(zhàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11
python中shell執(zhí)行知識(shí)點(diǎn)
在本篇文章里小編給大家分享的是關(guān)于python中shell執(zhí)行知識(shí)點(diǎn)內(nèi)容,需要的朋友們可以學(xué)習(xí)下。2020-05-05

