这样的写法可以吗?有没有更简洁的?我如何求列表的总和?求列表的总和会在后面讲吗?
来源:2-13 编程练习
jinxianzi
2023-03-30 17:16:19
# coding:utf-8 contestant_1 = [99, 96, 97.5, 89, 95.5, 93, 99, 95, 98, 99.5] contestant_2 = [91, 95.5, 97, 92, 99, 98, 94, 95.5, 96, 99] contestant_3 = [90.5, 92, 99, 99.5, 95, 90, 97, 96, 93, 91.5] contestant_4 = [98, 95, 95.5, 99, 92, 93.5, 93, 97.5, 96, 99.5] contestant_5 = [95, 91.5, 93, 96, 98.5, 99, 94, 96.5, 95.5, 92] contestant_1_max = max(contestant_1) contestant_1_min = min(contestant_1) contestant_every = [] print('选手一的最高分为:{}'.format(contestant_1_max),'选手一的最低分为:{}'.format(contestant_1_min)) contestant_1.remove(99.5) contestant_1.remove(89) print(len(contestant_1)) print(contestant_1) contestant_1_overall =99 + 96 + 97.5 + 95.5 + 93 + 99 +95 + 98 contestant_1_every = contestant_1_overall /8 print('选手一的平均分为:{}'.format(contestant_1_every)) contestant_2_max = max(contestant_2) contestant_2_min = min(contestant_2) print('选手二的最高分为:{}'.format(contestant_2_max),'选手二的最低分为:{}'.format(contestant_2_min)) contestant_2.remove(99) contestant_2.remove(91) print(len(contestant_2)) print(contestant_2) contestant_2_overall =95.5 + 97 + 92 + 98 + 94 + 95.5 + 96 + 99 contestant_2_every = contestant_2_overall /8 print('选手二的平均分为:{}'.format(contestant_2_every)) contestant_3.sort() print(contestant_3) contestant_3.remove(90) contestant_3.remove(99.5) print(contestant_3) contestant_3_overall = 90.5 + 91.5 + 92 + 93 + 95 + 96 + 97 + 99 contestant_3_every = contestant_3_overall / 8 print('选手三的平均分为:{}'.format(contestant_3_every)) contestant_4.sort() print(contestant_4) contestant_4.remove(92) contestant_4.remove(99.5) print(contestant_4) contestant_4_overall = 93 + 93.5 + 95 + 95.5 + 96 + 97.5 + 98 + 99 contestant_4_every = contestant_4_overall / 8 print('选手四的平均分为:{}'.format(contestant_4_every)) contestant_5.sort() print(contestant_5) contestant_5.remove(91.5) contestant_5.remove(99) print(contestant_5) contestant_5_overall = 92 + 93 + 94 + 95 + 95.5 + 96 + 96.5 +98.5 contestant_5_every = contestant_5_overall / 8 print('选手五的平均分为:{}'.format(contestant_5_every)) contestant_every.append(contestant_5_every) contestant_every.append(contestant_1_every) contestant_every.append(contestant_2_every) contestant_every.append(contestant_3_every) contestant_every.append(contestant_4_every) print(contestant_every) contestant_every.sort() print(contestant_every)
2回答
同学,你好!同学写法是符合作业要求的,但是可以更简洁些,求列表的总和可以用sum() 函数,同学可以直接用max、min求出列表最大值、最小值,然后再使用remove在原列表上移除最大值、最小值。再用sum()求列表的总和,以下是求取一位同学的平均分,同学可以参考下
祝学习愉快~
好帮手慕小猿
2023-03-30
同学,你好!同学写法是符合作业要求的,但是可以更简洁些,求列表的总和可以用sum() 函数,同学可以直接用max、min求出列表最大值、最小值,然后再使用remove在原列表上移除最大值、最小值。再用sum()求列表的总和,以下是求取一位同学的平均分,同学可以参考下
祝学习愉快~
相似问题