试编写程序,实现以下功能: 1、接收由用户输入的分数列表 提示:已知表达式a=eval(input()),当用户输入为'[70,87,90]'时,a获取的值为[70,87,90] 2、将列表中的分数去掉一个最低分和一个最高分(最低分如有相同,仅删除一个;最高分如有相同,也仅删除一个) 提示:可先将列表排序,然后通过索引访问获取最高分和最低分。也可以直接通过max和min函数获取最高分和最低分。 3、计算列表中剩余分数的平均分,并将结果输出,输出时使用format方法保留一位小数。 注意:假设用户输入的分数大于等于三个(10分) 可参照以下程序框架进行补全: lst_score=______________ #输入分数列表 max_score=_______________ #获取最高分 min_score=_______________ #获取最低分 __________________________ #删除最高分 __________________________ #删除最低分 count=____________________ #计算剩余分数个数 s=________________________ #计算剩余分数总分 print('_____________'.format(______________)) #输出平均分,结果保留一位小数 输入样例: [80,70,90,100] 输出样例: 85.0 时间限制:500ms内存限制:32000kb
时间: 2024-04-05 15:34:25 浏览: 173
lst_score=eval(input()) #输入分数列表
max_score=max(lst_score) #获取最高分
min_score=min(lst_score) #获取最低分
lst_score.remove(max_score) #删除最高分
lst_score.remove(min_score) #删除最低分
count=len(lst_score) #计算剩余分数个数
s=sum(lst_score) #计算剩余分数总分
print('{:.1f}'.format(s/count)) #输出平均分,结果保留一位小数
相关问题
python1、接收由用户输入的分数列表 提示:已知表达式a=eval(input()),当用户输入为'[70,87,90]'时,a获取的值为[70,87,90] 2、将列表中的分数去掉一个最低分和一个最高分(最低分如有相同,仅删除一个;最高分如有相同,也仅删除一个) 提示:可先将列表排序,然后通过索引访问获取最高分和最低分。也可以直接通过max和min函数获取最高分和最低分。 3、计算列表中剩余分数的平均分,并将结果输出,输出时使用format方法保留一位小数。
好的,下面是代码实现:
```
# 接收分数列表
score_list = eval(input("请输入分数列表,格式为[分数1, 分数2, ...]:"))
# 去掉最高分和最低分
min_score, max_score = min(score_list), max(score_list)
score_list.remove(min_score)
score_list.remove(max_score)
# 计算平均分
average_score = sum(score_list) / len(score_list)
# 输出结果
print("去掉最高分和最低分后的平均分为:{:.1f}".format(average_score))
```
这里使用了 `min()` 和 `max()` 函数获取最低分和最高分,然后使用 `remove()` 方法删除它们。需要注意的是,如果最低分和最高分有重复值,`remove()` 方法只会删除其中一个值。
使用python完成python1、接收由用户输入的分数列表 提示:已知表达式a=eval(input()),当用户输入为'[70,87,90]'时,a获取的值为[70,87,90] 2、将列表中的分数去掉一个最低分和一个最高分(最低分如有相同,仅删除一个;最高分如有相同,也仅删除一个) 提示:可先将列表排序,然后通过索引访问获取最高分和最低分。也可以直接通过max和min函数获取最高分和最低分。 3、计算列表中剩余分数的平均分,并将结果输出,输出时使用format方法保留一位小数。
好的,下面是使用 Python 实现上述算法的代码:
```python
# 接收分数列表
score_list = eval(input("请输入分数列表,格式为[分数1, 分数2, ...]:"))
# 去掉最高分和最低分
min_score, max_score = min(score_list), max(score_list)
score_list.remove(min_score)
score_list.remove(max_score)
# 计算平均分
average_score = sum(score_list) / len(score_list)
# 输出结果
print("去掉最高分和最低分后的平均分为:{:.1f}".format(average_score))
```
这里使用了 `eval()` 函数将用户输入的字符串转换为列表。这个函数有一定的安全隐患,如果你预料到用户可能会输入恶意代码,应该使用其它方式解析用户输入。
阅读全文