pyhton面向对象10:一个简单class(类)的定义【练习】

面向对象的思想:

1.用类方法,操作类变量
2.给别人一系列方法,去操作变量
3.执行程序尽可能不用类变量和实例变量。用方法去操作

练习:

要求:

1.创建一个Student类
2.列表存储;‘name’,‘age’,'score’三个信息
3.能够统计学生总数
4.能够删除,或者添加学生
5.能够计算平均分

输出:

1.学生信息
2.平均分
3.学生数量

class Student:
    count = 0           #此类变量用于统计学生的个数
    info_list = []      #此类变量用于存储学生的信息
    sum = 0             #此类变量用于计算学生的总分
    def __init__(self, name, age, score):
        self.name = name
        self.age = age
        self.score = score
        self.dict_save = {'name':name,'age':age,'score':score}  #用一个字典,存储三个信息
        Student.count += 1	#计数+1
        Student.info_list.append(self.dict_save)	#把字典添加进列表
        Student.sum += self.score		#总分相加
    def __del__(self):
        Student.count -=1	#计数-1
        Student.info_list.remove(self.dict_save)	#移除信息
        Student.sum -= self.score	#减去总分
    @classmethod
    def getTotalCount(cls):
        '''此方法用来得到学生的个数'''
        return cls.count
    @classmethod
    def getScoreAverage(cls):
        '''此方法用来得到学生的平均成绩'''
        average = cls.sum / cls.count
        return average
    @classmethod
    def getInfo(cls):
        '''此方法用来得到学生的信息'''
        return cls.info_list

s1 = Student('张', '15', 56)
s2 = Student('李', '22', 66)
s3 = Student('钱', '31', 76)

del s1

print(Student.getTotalCount())
print(Student.getScoreAverage())
print(Student.getInfo())

运行结果:

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值