Maison  >  Questions et réponses  >  le corps du texte

variables de classe en python

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 ?

phpcn_u1582phpcn_u15822669 Il y a quelques jours731

répondre à tous(1)je répondrai

  • 習慣沉默

    習慣沉默2017-06-28 09:26:34

    var1是类变量, self.var1是实例变量, 当你在类初始化成test2时, __init__去寻找自身实例的var1,发现没找到, 那就去基类找, 也就是testEn 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

    répondre
    0
  • Annulerrépondre