码迷,mamicode.com
首页 > 编程语言 > 详细

python 类变量和实例变量

时间:2016-12-07 20:13:35      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:assign   bsp   init   space   查找   ssi   python 类   就会   特性   

实例的属性存储在实例的__dict__中,类属性和方法存储在类的__dict__中.查找属性时,先检查特性,然后实例的__dict__,然后类的__dict__,然后基类.都不存在就会抛出异常.
print ‘***************************************************‘
class AA:
    count = 0
    def __init__(self):
        pass
    def AddCount(self):
        print ‘id -> self.__class__.count  self.count‘
        print id(self.__class__.count)
        print id(self.count)
        print self.count
        self.__class__.count = self.__class__.count + 1
        print ‘----------id after class assign--------‘
        print ‘id -> self.__class__.count  self.count‘
        print id(self.__class__.count)
        print id(self.count)
        print self.count
        self.count = self.count + 1
        print ‘----------id after instance assign--------‘
        print id(self.count)
if __name__ == "__main__":
    print id(AA.count)
    a = AA()
    a.AddCount()
    print a.count
    print ‘***************************************************‘
    b = AA()
    b.AddCount()
    print b.count
***************************************************
8207488
id -> self.__class__.count  self.count
8207488
8207488
0
----------id after class assign--------
id -> self.__class__.count  self.count
8207464
8207464
1
----------id after instance assign--------
8207440
2
***************************************************
id -> self.__class__.count  self.count
8207464
8207464
1
----------id after class assign--------
id -> self.__class__.count  self.count
8207440
8207440
2
----------id after instance assign--------
8207416
3

python 类变量和实例变量

标签:assign   bsp   init   space   查找   ssi   python 类   就会   特性   

原文地址:http://www.cnblogs.com/abelian/p/6142224.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!