如何查看Python functools.partial对象内部封装的原始函数?

如何查看Python functools.partial对象内部封装的原始函数?

探秘python functools.partial对象:如何查看其内部原始函数?

在Python中,使用functools.partial创建部分应用函数后,我们常常想知道它内部究竟保存了什么信息,特别是原始函数。本文将详细讲解如何查看functools.partial对象内部的原始函数。

我们先来看一个例子,通过functools.partial将multiply函数的部分参数固定,生成一个新的可调用对象partial_function。虽然type(partial_function)能确认其类型为functools.partial,但并不能直接显示其原始函数。

那么,如何查看partial_function的原始函数呢?答案是访问其func属性。

立即学习Python免费学习笔记(深入)”;

functools.partial对象具有三个只读属性:func、args和keywords。其中,func属性存储了被修饰的原始可调用对象(函数或其他可调用对象);args属性存储预设的位置参数;keywords属性存储预设的关键字参数。

因此,要查看partial_function的原始函数,只需访问partial_function.func即可。这将直接返回原始的multiply函数。

以下代码示例:

import functools  def multiply(x, y):     return x * y  partial_function = functools.partial(multiply, y=2)  print(partial_function.func)  # 输出:<function multiply at 0x...> (地址会因运行环境而异)

print(partial_function.func)将打印multiply函数的引用,清晰地显示了partial_function所修饰的函数,从而让我们了解functools.partial对象内部结构以及其封装的原始函数。

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享