利用裝飾器將被裝飾函數的返回值全部轉換爲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))
執行結果: