Python类初始化函数
当我用python初始化一个类时,它只被调用一次吗?例如,如果我在init区域中编写if语句Python类初始化函数,python,class,Python,Class,当我用python初始化一个类时,它只被调用一次吗?例如,如果我在init区域中编写if语句 class hi(): def __init__(): # bla bla bla 它只循环一次吗?\uuuuu init\uuuuuu是类的构造函数。对于您创建的类的每个实例,它都会被调用一次 class A(object): def __init__(self): print('__init__ called') a1 = A() # print
class hi():
def __init__():
# bla bla bla
它只循环一次吗?
\uuuuu init\uuuuuu
是类的构造函数。对于您创建的类的每个实例,它都会被调用一次
class A(object):
def __init__(self):
print('__init__ called')
a1 = A() # prints: __init__ called
a2 = A() # prints: __init__ called
顺便说一句,这不是pygame特有的东西,而是python一般的东西
构造函数始终至少接受一个参数:self
。它可能需要额外的参数self
是正在构造的实例,您可以在构造函数中对其进行初始化
class A(object):
def __init__(self, value):
self.value = value
a1 = A(17)
print (a1.value) # prints: 17
init函数理想情况下用于以python的oops样式声明变量
def classA:
def __init__(self):
self.somevariable = somevalue
def classB:
def __init__(self):
#again declare some variables
如果使用classB,则可以同时使用classA和classB的变量。然而,如果类B中没有init,那么只使用类A的init。
至于你的问题,我想说它可以再次运行。我想你所说的循环是指它是否可以再次使用
\uuuu init\uuuu
仅在每次实例化类时调用一次。我已经说过,你的问题并不完全清楚。if语句在任何条件下都不会循环。对不起,我的问题模棱两可。无论如何,谢谢你。