装饰器实现setup

# -*- coding: utf-8 -*-
"""
@author:yuan_x
@software:PyCharm
@file:warps_stu.py
@time:2021/1/3 10:46 上午


"""
import time
import requests

def time_test(f):
    aa=0
    data_list=[]
    def inner(*args,**kwargs):
        for i in reversed(range(2,8,2)):
            print("start {}".format(i))
            time.sleep(i)
            a=f(*args,**kwargs)
            data_list.append(a)
        print(aa)
        return data_list
    return inner

def set_test(f):
    def inner(*args,**kwargs):
        a=f.setup(*args,**kwargs)
        return a
    return inner

# class test_warp:
#     @time_test
#     def show(self):
#         ret=requests.get(url="http://www.baidu.com")
#         return ret.text

def aaaa():
    return 1+2

@set_test
class test_set:
    @classmethod
    def setup(cls):
        a=aaaa()
        print("*"*120)
        print(a)
        return a

if __name__ == '__main__':
    # a=test_warp()
    # print(2222)
    # bb=a.show()
    # print(bb)
    # print(len(bb))
    test_obj=test_set()

  

posted @ 2021-01-03 21:35  Yuan_x  阅读(111)  评论(0)    收藏  举报