python几个重要实用的模块,枚举函数,匿名函数,迭代,生成器,装饰器
枚举函数
enumerate()函数向可迭代对象添加一个计数器,并以枚举对象的形式返回。应用于遍历列表并跟踪索引
fruits = ['apple', 'banana', 'mango']
for index, fruit in enumerate(fruits):
print(index, fruit)
匿名函数
Lambda关键字定义匿名函数
add = lambda x, y: x + y
result = add(3, 4)
print(result)
迭代模块
itertools处理迭代器。包括chain、product和permutations。
import itertools
numbers = [1, 2, 3]
result = list(itertools.permutations(numbers))
生成器
生成器用yield关键字定义用于创建自定义迭代器。
# 使用yield关键字创建生成器
def fibonacci_series(n):
a, b = 0, 1
for i in range(n):
yield a
a, b = b, a + b
# 输出迭代器中的值
for number in fibonacci_series(10):
print(number)
装饰器
装饰器使用@符号,可用于向函数添加功能,例如日志记录、计时或身份验证。
def log_function(func):
def wrapper(*args, **kwargs):
print(f'Running {func.__name__}')
result = func(*args, **kwargs)
print(f'{func.__name__} returned {result}')
return result
return wrapper
@log_function
def add(x, y):
return x + y
print(add(5,7))