大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
Python复杂对象转JSON
在Python对于简单的对象转json还是比较简单的,如下:
import json
d = {
'a': 'aaa', 'b': ['b1', 'b2', 'b3'], 'c': 100}
json_str = json.dumps(d)
print json_str
对于复杂对象,可以使用下面的方法来实现,比如:
import json
class Customer:
def __init__(self, name, grade, age, home, office):
self.name = name
self.grade = grade
self.age = age
self.address = Address(home, office)
def __repr__(self):
return repr((self.name, self.grade, self.age, self.address.home, self.address.office))
class Address:
def __init__(self, home, office):
self.home = home
self.office = office
def __repr__(self):
return repr((self.name, self.grade, self.age))
customers = [
Customer('john', 'A', 15, '111', 'aaa'),
Customer('jane', 'B', 12, '222', 'bbb'),
Customer('dave', 'B', 10, '333', 'ccc'),
]
json_str = json.dumps(customers, default=lambda o: o.__dict__, sort_keys=True, indent=4)
print json_str
结果如下
[
{
"address": {
"home": "111",
"office": "aaa"
},
"age": 15,
"grade": "A",
"name": "john"
},
{
"address": {
"home": "222",
"office": "bbb"
},
"age": 12,
"grade": "B",
"name": "jane"
},
{
"address": {
"home": "333",
"office": "ccc"
},
"age": 10,
"grade": "B",
"name": "dave"
}
]
转载请以链接形式标明本文地址
本文地址:http://blog.csdn.net/kongxx/article/details/51563720
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/193572.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...