实例属性,类属性

类方法与实例方法

两者区别在于定义类中方法的()内有无self参数
类方法调用: 类名.方法名() 例如: Animal.run()
实例方法调用: 实例名.方法名() 例如: dog.run() dog=Animal()
此外 类名().方法名()也是实例方法的调用,方法参数里必须含有self

为了统计学生人数,可以给Student类增加一个类属性,每创建一个实例,该属性自动增加:

class Student(object):
    count = 0

    def __init__(self, name):
        self.name = name
        #self.count = self.count + 1
        #上面这句代码是不正确的,
        Student.count = Student.count + 1
if Student.count != 0:
    print('测试失败!')
else:
    bart = Student('Bart')
    if Student.count != 1:
        print('测试失败!')
    else:
        lisa = Student('Bart')
        if Student.count != 2:
            print('测试失败!')
        else:
            print('Students:', Student.count)
            print('测试通过!')

猜你喜欢

转载自blog.csdn.net/weixin_43821215/article/details/125671734