利用装饰器将被装饰函数的返回值全部转换为JSON格式
import json
from functools import wraps
def json_converter(func):
"""将被装饰函数的返回结果转换成JSON格式"""
@wraps(func)
def wrapper(*args, **kwargs):
"""闭包函数"""
result = func(*args, **kwargs)
json_res = json.dumps(result)
return json_res
return wrapper
@json_converter
def my_test():
# 创建字典类型返回值
return dict(name="Ammy", passwd=666666, age=16)
if __name__ == '__main__':
json_res = my_test()
print("被装饰后返回结果:", json_res)
print("被装饰后返回结果数据类型:", type(json_res))
执行结果: