给定函数
@mydecorator
def f(x):
...
f(5)
我可以移除decorator并将函数调用为
^{pr2}$如何将其转换为对象方法?尤其是__init__
??在
例如,我创建了一个装饰师
class TestClass:
@mydecorator
def __init__(self, x, y):
...
它修改传递给__init__
的参数。我想删除它,并只在我想要的实例上手动应用它
myinstance = mydecorator(TestClass)(...)
)__init__
之前调用__new__
会影响行为吗?在
decorator并没有真正修改参数。它只是一个高阶函数,返回给定函数的函数。你可以这样做
使用
^{pr2}$这只会在调用init之后更改函数以打印参数,不会有太大变化。要只修改某些实例的行为,可以在decorator中处理它,因为可以访问参数和默认函数。在
相关问题 更多 >
编程相关推荐