金克拉刺秦王 发表于 2019-8-11 10:45:59

python第一版 第39讲课后作业问题求助

各位大神:

第39讲课后作业中,动动手第0题,答案是这样的:
class C:
      count = 0
      
      def __init__(self):
                C.count += 1

      def __del__(self):
                C.count -= 1

>>> a = C()
>>> b = C()
>>> c = C()
>>> C.count
3
>>> del a
>>> C.count
2
>>> del b, c
>>> C.count
0

为啥这样就能每定义一个实例对象就加1啊。。。。。。不明白。。。求助ing

zltzlt 发表于 2019-8-11 10:49:00

因为 count 是 C 的类属性,每次初始化 C 类都会将 count 类属性加 1,count 并不是实例属性,可以直接通过 C.count 访问
页: [1]
查看完整版本: python第一版 第39讲课后作业问题求助