你是否还在为json.dumps输出的json-string太丑而悲伤?
你是否倦怠于每次利用ide格式化手动美化结果?
一个入参解决你的问题!

1
json.dumps(self, indent=4)

另外一个入参可以处理非dict格式的变量,使其也能转化成json-string。

1
json.dumps(self, default=lambda o: o.__dict__, indent=4)

使用案例:

1
2
3
4
5
6
7
8
class DataSource:
def __init__(self, instruction, output, dataset_id):
self.instruction = instruction
self.output = output
self.dataset_id = dataset_id

def to_json(self):
return json.dumps(self, default=lambda o: o.__dict__, indent=4)