Maison > Questions et réponses > le corps du texte
Les variables d'une classe sont-elles identiques à self.var1 dans une fonction ? Pourquoi sont-ils pareils ?
class test:
var1=2
def __init__(self):
print self.var1
print self.var1 is test.var1
if __name__=="__main__":
test2=test()
Une fois la fonction exécutée,
root@lpp-ThinkPad-T420:~/python_code# python test6.py
2
True
Pourquoi la variable de classe var1 ici est-elle également self.var1 ?
習慣沉默2017-06-28 09:26:34
var1
是类变量, self.var1
是实例变量, 当你在类初始化成test2
时, __init__
去寻找自身实例的var1
,发现没找到, 那就去基类找, 也就是test
En regardant à l'intérieur, je l'ai trouvé par hasard, alors je vous l'ai rendu directement
Si vous souhaitez approfondir, vous pouvez effectuer une recherche 类变量/实例变量
和 python descriptor
sur Google