美文网首页ITS·黑客
Python学习笔记十七

Python学习笔记十七

作者: 6156fc232124 | 来源:发表于2017-05-14 13:05 被阅读1次

    实例属性和类属性

    1.在编写程序的时候,一定要避免实例属性和类属性使用同样的名字,否则实例属性将屏蔽掉类属性。直到删除了实例属性后,再使用相同的名称,访问到的才将是类属性。

    2.实例绑定属性:通过实例变量或者通过self变量

    3.给类本身绑定属性:可以直接在class中定义属性,即类属性

    例子如下(摘自教程,理解这个就基本上理解了!!)

    >>>classStudent(object):

    ...name ='Student'

    ...

    >>>s = Student() # 创建实例s

    >>>print(s.name) # 打印name属性,因为实例并没有name属性,所以会继续查找class的name属性Student

    >>>print(Student.name) # 打印类的name属性Student

    >>>s.name ='Michael' # 给实例绑定name属性

    >>>print(s.name) # 由于实例属性优先级比类属性高,因此,它会屏蔽掉类的name属性

    Michael

    >>>print(Student.name) # 但是类属性并未消失,用Student.name仍然可以访问

    Student

    >>>dels.name # 如果删除实例的name属性

    >>>print(s.name) # 再次调用s.name,由于实例的name属性没有找到,类的name属性就显示出来了

    Student

    相关文章

      网友评论

        本文标题:Python学习笔记十七

        本文链接:https://www.haomeiwen.com/subject/lclqxxtx.html