您的理解是错误的。
self本身就是该函数定义的参数,因此在那时它不可能在范围内。它仅在函数本身的范围内。
答案很简单,就是将参数默认为
None,然后在方法中检查该参数:
def doSomething(self, a=None): if a is None: a = self.z self.z = 3 self.b = a

您的理解是错误的。
self本身就是该函数定义的参数,因此在那时它不可能在范围内。它仅在函数本身的范围内。
答案很简单,就是将参数默认为
None,然后在方法中检查该参数:
def doSomething(self, a=None): if a is None: a = self.z self.z = 3 self.b = a