Python_装饰器

前言

1. 了解什么是函数? 函数可以传值、赋值、返回值

2. 嵌套函数:在函数内部定义的函数,只能在函数内部执行

3. 利用返回return在函数外去执行嵌套函数

4. 将函数作为一个参数去传给另一个函数

注意:return 函数名后面加不加()区别很大。 加()函数就会执行,而不加()它将会被到处传递、赋值而不去执行。

装饰器_函数

# @Time     : 2022/2/23 22:35
# @Author   : Bella
# -*- coding: utf-8 -*-
from functools import wraps


# 1. 简单的方式去构建一个装饰器修饰函数
def zhuangshiqi_1(fun):
    @wraps(fun)
    # @wraps的用处主要是在装饰器方便访问之前的函数属性
    def demo():
        print('开始')
        fun()
        print('结束')

    return demo


def hanshu_1():
    print('函数1')


res = zhuangshiqi_1(hanshu_1)
res()


# 2.标准方式去写装饰器
def zhuangshiqi_2(fun, *args, **kwargs):
    @wraps(fun, *args, **kwargs)
    # @wraps的用处主要是在装饰器方便访问之前的函数属性
    def demo(*args, **kwargs):
        print('开始')
        fun(*args, **kwargs)
        print('结束')

    return demo


@zhuangshiqi_2
def hanshu_2():
    print('函数2')


@zhuangshiqi_2
def hanshu(count):
    print('函数{}'.format(count))


hanshu_2()
hanshu(count=5)

-------------------------------------------------------------------------------------------------------

 

posted @ 2022-02-24 00:06  是超级可爱的小姚童鞋  阅读(33)  评论(0编辑  收藏  举报