当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python functools.partialmethod用法及代码示例


用法:

class functools.partialmethod(func, /, *args, **keywords)

返回一个新的 partialmethod 说明符,它的行为类似于 partial,只是它被设计为用作方法定义而不是直接可调用。

func 必须是说明符或可调用对象(两者都像普通函数一样,作为说明符处理)。

func 是一个说明符(例如普通的 Python 函数、classmethod()staticmethod()abstractmethod()partialmethod 的另一个实例)时,对 __get__ 的调用被委托给底层说明符,并且适当的作为结果返回的部分对象。

func 是非说明符可调用时,会动态创建适当的绑定方法。当用作方法时,它的行为类似于普通的 Python 函数:self 参数将作为第一个位置参数插入,甚至在提供给 partialmethod 构造函数的 argskeywords 之前。

例子:

>>> class Cell:
...     def __init__(self):
...         self._alive = False
...     @property
...     def alive(self):
...         return self._alive
...     def set_state(self, state):
...         self._alive = bool(state)
...     set_alive = partialmethod(set_state, True)
...     set_dead = partialmethod(set_state, False)
...
>>> c = Cell()
>>> c.alive
False
>>> c.set_alive()
>>> c.alive
True

3.4 版中的新函数。

相关用法


注:本文由纯净天空筛选整理自python.org大神的英文原创作品 functools.partialmethod。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。