python中的实例属性和类属性


在python中,类属性和实例属性的区别是什么?

我认为是作用域的不同,实例对象可以访问类属性,类对象不可以访问实例属性。(类的概念本身就是作用域的概念,你不能让一只猫会飞,猫属于猫类,这一类都不会飞。所以“飞”这种方法,猫类不具有)

比如:

class People(object):
    name = 'Tom'  # 公有的类属性

    __age = 12  # 私有的类属性
    #  实例属性
    def __init__(self,height):
        self.height = height

p = People("183cm")

print(p.name)  # 正确,实例对象可以访问类属性

print(People.name)  # 正确,类对象可以访问类属性

print(People.height)  #  错误,类对象不能访问实例属性

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM