极客前沿

Python装饰器入门:一步步安装与第一次跑通

2026-06-14 01:30
DEV Beginners
查看原文

零基础学会Python装饰器概念、安装环境、编写第一个装饰器,并验证成功。

准备环境

在开始之前,你需要一个能运行Python的环境。如果你还没有安装Python,请到python.org下载最新版本(推荐3.10以上)。安装时记得勾选Add Python to PATH(把Python添加到系统路径),这样在命令行里就能直接使用python命令了。安装完成后,打开终端(Windows用cmd或PowerShell,Mac/Linux用终端),输入python --version,如果看到版本号,说明安装成功。

什么是装饰器

装饰器是Python的一种特殊函数,它可以在不修改原函数代码的情况下,给函数增加额外功能。你可以把它想象成一个包装纸:把原函数包起来,在调用时自动执行一些前后操作,比如打印日志、计算运行时间等。

安装步骤

装饰器是Python内置功能,不需要额外安装库。但为了练习,建议创建一个独立项目文件夹。步骤如下:

  1. 在桌面新建文件夹,命名为decorator-demo
  2. 打开终端,进入该文件夹:cd Desktop/decorator-demo
  3. 创建一个Python文件:notepad my_decorator.py(Windows)或touch my_decorator.py(Mac/Linux)。

编写第一个装饰器

打开my_decorator.py,输入以下代码:

Tutorial Image
def my_decorator(func):
    def wrapper():
        print("调用函数前执行")
        func()
        print("调用函数后执行")
    return wrapper

@my_decorator
def say_hello():
    print("你好!")

say_hello()

这里@my_decorator就是装饰器的语法糖,等价于say_hello = my_decorator(say_hello)。运行文件:在终端输入python my_decorator.py,你会看到输出:

调用函数前执行
你好!
调用函数后执行

说明装饰器生效了!常见坑:记得wrapper函数要返回,否则装饰器不会生效;另外如果原函数有参数,wrapper需要接收*args**kwargs

验证是否成功

如果看到上述三行输出,说明你成功跑通了第一个装饰器。你可以尝试修改say_hello函数内容,或者写一个新的函数并用同一个装饰器,观察效果。

下一步可以做什么

掌握了基础装饰器后,可以尝试:

  • 给装饰器增加参数(比如指定日志级别)。
  • functools.wraps保留原函数的元信息。
  • 学习常用的内置装饰器,如@staticmethod@classmethod

装饰器是Python进阶的重要工具,多写多练就能熟练掌握。

内容来源

DEV Beginners

发布时间

2026-06-14 01:30

返回 AI技术