Python标准库笔记(9) — functools模块

Python91

functools 作用于函数的函数

functools 模块提供用于调整或扩展函数和其他可调用对象的工具,而无需完全重写它们。

装饰器

partial 类是 functools 模块提供的主要工具, 它可以用来"包装"一个可调用的对象的默认参数。它产生的对象本身是可调用的,可以看作是原生函数。它所有的参数都与原来的相同,并且可以使用额外的位置参数或命名参数来调用。使用 partial 代替 lambda 来为函数提供默认参数,同时保留那些未指定的参数。

下面列子是对 myfunc 方法的两个 partial 对象, show_details() 用于输出partial对象的 funcargskeywords 属性:

```python
import functools

def myfunc(a, b=2):
"""Docstring for myfunc()."""
print(' 传入参数:', (a, b))

def show_details(name, f, is_partial=False):
"""Show details of a callable object."""
print('{}:'.format(name))

输入验证码查看隐藏内容

扫描二维码关注本站微信公众号 Johngo学长
或者在微信里搜索 Johngo学长
回复 svip 获取验证码
wechat Johngo学长