猿问

Python中类定义的问题?

Python中类定义的问题


慕尼黑的夜晚无繁华
浏览 1472回答 3
3回答

jeck猫

A1:参数self代表实例本身,例如: A=FooClass(),那么self就代表A,类函数中,self是必需的A2:__class__获得已知对象的类,任何对象都有这个属性,__name__取得类名A3:version是类成员变量,实例化后是实例变量,类函数获得实例变量需要带上实例本身,这个其实我也很难解释得很透彻,可以大概讲一下version = 0.1 这里在实例化之前就已经生成了而__init__(self,nm='Louis wu'):这里的nm变量是在实例化的时候生成的在类方法中访问version和nm的方式是一样的,self.version和self.nm但是version在类没有实例化的情况下也是可以访问的,因为它在实例化之前就已经声明了你可以尝试print FooClass.version 是可以得到version的值的但是FooClass.nm是不可以的,必须是实例化之后才生成这个变量,FooClass().nm就可以访问到了

绝地无双

1.Python是一门动态语言,任何实体都可以动态地添加或删除属性。2.一个类定义了一个作用域。3.类实例也引入了一个作用域,这与相应类定义的作用域不同。4.在类实例中查找属性的时候,首先在实例自己的作用域中查找,如果没有找到,则再在类定义的作用域中查找。5.在对类实例属性进行赋值的时候,实际上会在类实例定义的作用域中添加一个属性(如果还不存在的话),并不会影响到相应类中定义的同名属性。
随时随地看视频慕课网APP
我要回答