# -*- 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)
運行結果如下:
----------- {'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'}]
希望本文所述對大家Python程序設計有所幫助。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com