8 种 Python 函数类型,真希望早点学会

在学习 Python 的过程中,你可能已经习惯了用 def 来定义函数。但实际上,Python 提供了很多种函数形式,它们各有妙用,能让你的代码更简洁、更优雅、更高效。今天就带你了解 8 种常见的 Python 函数类型,并配上最简单的示例,助你快速上手。

1. Lambda 函数(匿名函数)

Lambda 函数是使用 lambda 关键字定义的小型匿名函数,“匿名”的意思是函数可以不用名字,直接写在需要的地方。

比如:

匿名函数常与高阶函数配合使用,省去显式定义函数的麻烦。

2. 高阶函数(Higher-order Function)

高阶函数是指:

  • 接收一个函数作为参数,或
  • 返回一个函数,或
  • 同时满足以上两点

最常见的例子就是 map、filter、reduce。一个简单的例子:

3. 装饰器函数(Decorator)

装饰器是一种特殊的高阶函数,用来给函数“加功能”,而不改变原函数的源码。

4. 递归函数(Recursive Function)

递归函数就是在函数内部调用自己,通常需要 基例递归式 两部分。

5. 纯函数(Pure Function)

纯函数的特点:

  • 确定性:相同输入一定得到相同输出
  • 无副作用:不修改函数外部的状态

这种函数容易测试、调试和复用。

6. 生成器函数(Generator)

生成器函数使用 yield 关键字,可以一边运行一边产出结果,而不是一次性生成所有结果。

相比直接返回列表,生成器更节省内存。

7.魔术方法(Magic Method)

魔术方法是 Python 类中带有双下划线的特殊方法,比如:

  • __init__:对象初始化
  • __str__:定义对象转字符串时的表现
  • __add__:定义对象加法的行为

8. 异步函数与协程(Async & Coroutine)

异步函数使用 async def 定义,可以在执行过程中“暂停”和“切换”,提升 I/O 密集任务的效率。

异步编程特别适合网络请求、数据库查询等场景。


这 8 种函数形式,是 Python 编程中常见且强大的工具:

  • lambda 让代码更简洁
  • 高阶函数和装饰器让函数更灵活
  • 递归与纯函数提升代码表达力
  • 生成器和异步函数帮助提升性能
  • 魔术方法让类更贴合 Python 风格

掌握它们,你的 Python 水平一定会更上一层楼。