阅读提示:本文共计约2183个文字,预计阅读时间需要大约6分钟,由作者狗狗领养免费编辑整理创作于2023年11月06日19时40分38秒。
在 Python 中,functools.partial 是用于创建具有固定参数值的函数的新实例的装饰器。当使用 partial 对函数进行修饰时,可以方便地创建具有部分参数固定的函数副本,从而减少代码重复和提高代码可读性。下面通过一个简单的例子来展示如何使用 partial 以及如何查看被 partial 修饰的对象。
导入 functools 和 partial:
from functools import partial
然后定义一个原始函数:
def add(a, b):
return a b
现在使用 partial 修饰这个函数,使其接受两个参数,并将第一个参数固定为 5:
add_five = partial(add, 5)
现在我们可以调用 add_five
,它相当于 add(5, b)
:
print(add_five(10)) # 输出:15
要查看被 partial 修饰的对象,可以通过打印对象信息来实现。在 Python 3.x 中,可以使用 __repr__
方法来查看对象的详细信息;而在 Python 2.x 中,可以使用 __str__
方法。这里我们使用 __repr__
方法:
print(repr(add_five))
输出结果如下(为了便于阅读,省略了一些细节):
<functools.partial object at 0x7f19e8c6b8d0>
可以看到,输出的结果是 <functools.partial object at ...>
,表示这是一个被 partial 修饰的对象。同时,输出的地址信息表明了该对象在内存中的位置。
通过使用 functools.partial,我们可以轻松地创建具有部分参数固定的函数副本,并在需要时查看这些被修饰的对象。