Python 小练习_班级平均分

来源:互联网 发布:蝉知cms 编辑:程序博客网 时间:2024/05/01 04:09

codecademy上的练习题,做完了,磕磕碰碰,感觉还是很生疏,笔记一下吧

3个字典就不多说了,数据范本


lloyd = {

    "name": "Lloyd",
    "homework": [90.0, 97.0, 75.0, 92.0],
    "quizzes": [88.0, 40.0, 94.0],
    "tests": [75.0, 90.0]
}
alice = {
    "name": "Alice",
    "homework": [100.0, 92.0, 98.0, 100.0],
    "quizzes": [82.0, 83.0, 91.0],
    "tests": [89.0, 97.0]
}
tyler = {
    "name": "Tyler",
    "homework": [0.0, 87.0, 75.0, 22.0],
    "quizzes": [0.0, 75.0, 78.0],
    "tests": [100.0, 100.0]
}


def get_letter_grade(score):       # 根据分数打等级ABCDEF
    if score >= 90:
        return 'A'
    elif score >=80:
        return 'B'
    elif score >=70:
        return 'C'
    elif score >=60:
        return 'D'
    else:
        return 'F'
        
def average(numbers):# Add your function below!    #注意了,这个函数是用在最后算全班平均分用的....对其他功能没作用,别搞混了,当初写这个函数的时候
    total = float(sum(numbers))                                        #被搞混了很久,还去写判断对象是不是list的语句,其实他只是针对最后出来3个人的平均分以后,算全班平均值的
    result = total / float(len(numbers))                              #课程里面让我们先写这个定义功能,我觉得可以放在最后写,以免误导.
    return result


def get_average(student):                                               #这个是用来算每个人的平均分的,student是变量,实际函数功能的里面,对象是value值.
    homework=average(student['homework'])
    quizzes=average(student['quizzes'])
    tests=average(student['tests'])
    total=0.1*homework+0.3*quizzes+0.6*tests            #每个分数占比不同的
    return total
    
def get_class_average(students):                                 
    results = []                                                                        #这里的results,是用来记录3个人的平均分的,一个一个添加进去
    for student in students:
        results.append(get_average(student))
    return average(results)


students=[lloyd,alice,tyler]
#printing class average
print (get_class_average(students))                                              #其实最后不用定义students,也能执行,写成  print (get_class_average([lloyd,alice,tyler]))

print (get_letter_grade(get_class_average(students)))              #print (get_letter_grade(get_class_average([lloyd,alice,tyler])))



0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 两个订单一个单号怎么办 快递乡村不派送怎么办 快递电话打不通怎么办 淘宝id被监控怎么办 快递扫描漏掉了怎么办 千牛空间不足怎么办 iphone储存将满怎么办 微销通老是请求拒绝怎么办 联璧金融的钱怎么办 店家不给退货怎么办 京东换货不成功怎么办 京东审核关闭怎么办 服装店盘货衣服不对怎么办 盘点衣服少了怎么办 超市盘点少东西怎么办 货到付款买家不收怎么办 快递员忘记收钱怎么办 发货了买家退款怎么办 买家一直不退款怎么办 京东商家退货怎么办 发货后退货邮费怎么办 淘宝货到退款怎么办 淘宝收不到货怎么办 淘宝不处理投诉怎么办 实体店不能退货怎么办 顾客无理由退货怎么办 京东衣服质量问题怎么办 买家退货要运费怎么办 卖家不给退运费怎么办 淘宝申请退款卖家不退怎么办 网购商家报复怎么办 淘宝退货店家不同意怎么办 淘宝退货不同意退款怎么办 运费险没收到怎么办 地税逾期未申报怎么办 转转买家发到付怎么办 捡到苹果手机打不开怎么办 捡到指纹手机打不开怎么办 捡到手机密码打不开怎么办 遇到假苹果售后怎么办 做微商被骗囤货怎么办