是否可以在init方法内的python类中定义成员函数?
我在想类似setattr或通过lambda的东西
class Engine(Base):
def __init__(self):
super(Engine, self).__init__(self)
self.__class__.__call__ = lambda self, x: x
不起作用,但是
class Engine(Base):
def __init__(self):
self.__class__.__call__ = lambda self, x: x
super(Engine, self).__init__(self)
是,为什么呢?
是,可以。像这样:
class Engine(Base):
def __init__(self):
super().__init__()
self.__class__.__call__ = lambda self, x: x
a = Engine()
print(a(42)) # it prints 42