我试图在__init__()
函数中分配一些东西给变量,但是当我试图调用它时,变量的值消失了。
class A:
def __init__(self):
if condition 1:
self.a = some variables
elif condition 2:
self.b = some variables
def method1(self):
do somethings
return self.a, self.b
当我尝试在满足condition1
和condition2
后调用method1()
时(我设置了一个断点来检查__init__()
的末尾是否存在self.a
和self.b
),只有self.a
被分配了一个值,但self.b
没有被分配值。
我不知道我做错了什么。
您的代码可能只满足条件1(并在那里定义了self.a
),但不满足条件2(因此没有定义self.b
)。您可以在__init__
方法的开头初始化它们,例如self.a = None