Python 函数是组织代码、提高代码复用性的重要方式。本文将介绍一些 Python 中的高级函数。
闭包 (Closures)
闭包是一种特殊的函数,它可以访问并操作自由变量,即使这些变量在函数外部。
def make_multiplier_of(n):
def multiplier(x):
return x * n
return multiplier
my_multiplier = make_multiplier_of(5)
print(my_multiplier(10)) # 输出: 50
生成器 (Generators)
生成器是一种特殊的迭代器,它允许按需产生数据项,而不是一次性生成整个数据集。
def generate_numbers(n):
for i in range(1, n + 1):
yield i
for number in generate_numbers(5):
print(number)
柔性装饰器 (Flexible Decorators)
装饰器是一种用于修改函数行为的工具。以下是创建一个可以接收额外参数的装饰器的示例:
def my_decorator(func):
def wrapper(*args, **kwargs):
print("Something is happening before the function is called.")
result = func(*args, **kwargs)
print("Something is happening after the function is called.")
return result
return wrapper
@my_decorator
def say_hello(name):
return f"Hello, {name}"
say_hello("Alice")
扩展阅读
Python 编程