怎样用类方法获取学生的姓名,年龄,最高分和总分呢

img

有下面的类属性: 姓名、年龄、音乐素养,综合印象,歌曲诠释(打分项均为整数),且有以下的类方法: 获取学生的姓名:get_name() ;获取学生的年龄:get_age() ;返回三项中最高的分数和总分:get_item( ) 。实例: zm = Singer('zhangming',18,80,90,85) 输出结果 :姓名:zhangming年龄:18最高分:90总分:255

好的,给你写好 ,完整代码如下:



class Singer:
    def __init__(self,name,age,accomplishment,impression,interpretation):
        self.name = name
        self.age = age
        self.accomplishment = accomplishment
        self.impression = impression
        self.interpretation = interpretation

    def get_name(self):
        return self.name

    def get_age(self):
        return self.age

    def get_item(self):
        max_score = max([self.accomplishment,self.impression,self.interpretation])
        total_score = sum([self.accomplishment,self.impression,self.interpretation])
        return max_score,total_score


zm = Singer('zhangming',18,80,90,85)
max_score,total_score = zm.get_item()
print('姓名:{} 年龄:{} 最高分:{} 总分:{}'.format(zm.get_name(),zm.get_age(),max_score,total_score))



运行结果:

img


class Singer:
    def __init__(self, name, age, music_skill, overall_impression, song_interpretation):
        self.name = name
        self.age = age
        self.music_skill = music_skill
        self.overall_impression = overall_impression
        self.song_interpretation = song_interpretation

    def get_name(self):
        return self.name

    def get_age(self):
        return self.age

    def get_item(self):
        max_score = max(self.music_skill, self.overall_impression, self.song_interpretation)
        total_score = self.music_skill + self.overall_impression + self.song_interpretation
        return max_score, total_score

zm = Singer('zhangming', 18, 80, 90, 85)
print("姓名:{},年龄:{},最高分:{},总分:{}".format(zm.get_name(), zm.get_age(), *zm.get_item()))