题目
用面向对象方法实现学生类,学生有姓名、性别和dataStructure,algorithm,Python三门课的成绩,
提供读取这些属性的方法,以及把百分制成绩转换为ABCDE五档成绩,计算平均成绩等方法
个人解答:
import types
class Score:def __init__(self,dataStructure,algorithm,Python ):self.dataStructure = dataStructureself.algorithm = algorithmself.Python = Pythondef getdataStructure(self):return self.dataStructuredef getalgorithm(self):return self.algorithmdef getPython(self):return self.Pythondef getaverage(self):return (self.algorithm + self.dataStructure + self.Python)/3class student:def __init__(self,name,sex):self.name = nameself.sex = sexdef printname(self):print("my name is "+self.name)def printsex(self):print("my sex is "+self.sex)def myaverage(self,type):print(type.getaverage())def grade(self,score):if(score>90):print("A")elif(score>80):print("B")elif(score>70):print("C")elif(score>60):print("D")else:print("E")
测试用例:
stu = student("xx","male")
sco =Score(90,89,100)
stu.printname()
stu.printsex()
stu.grade(sco.dataStructure)
stu.grade(sco.algorithm)
stu.grade(sco.Python)
stu.myaverage(sco)
水平不足,如果有什么不对,请各位大佬指出更正。