编写代码,以实现如下功能:键盘输入小明学习的课程名称及考分等信息,信息间采用空格分隔,每个课程一行,空行回车结束录入,示例格式如下: 数学 90 语文 95 英语 86 物理 84 生物 87 屏幕输出得分最高的课程及成绩,得分最低的课程及成绩,以及平均分(保留2位小数)。 注意,其中逗号为英文逗号,格式如下: 最高分课程是语文95,最低分课程是物理84,平均分是88.40 提示:编程题11-2的代码提示框架如下,其中代码可以任意修改。 # 以下代码为提示框架 # 请在...处使用一行或多行代码替换 # 请在______处使用一行代码替换 # # 注意:提示框架代码可以任意修改,以完成程序功能为准 data = input() # 课程名考分 ... while data: ... data = input() ... print("最高分课程是{} {}, 最低分课程是{} {}, 平均分是{:.2f}".format(______))
时间: 2023-12-06 08:44:36 浏览: 108
```
course_scores = {}
data = input()
while data:
course, score = data.split()
course_scores[course] = int(score)
data = input()
highest_score = max(course_scores.values())
lowest_score = min(course_scores.values())
highest_course = [k for k, v in course_scores.items() if v == highest_score][0]
lowest_course = [k for k, v in course_scores.items() if v == lowest_score][0]
average_score = sum(course_scores.values()) / len(course_scores)
print("最高分课程是{} {}, 最低分课程是{} {}, 平均分是{:.2f}".format(highest_course, highest_score, lowest_course, lowest_score, average_score))
```
相关问题
编写Python代码,以实现如下功能:键盘输入小明学习的课程名称及考分等信息,信息间采用空格分隔,每个课程一行,空行回车结束录入,示例格式如下: 数学 90 语文 95 英语 86 物理 84 生物 87 屏幕输出得分最高的课程及成绩,得分最低的课程及成绩,以及平均分(保留2位小数)。 注意,其中逗号为英文逗号,格式如下: 最高分课程是语文95,最低分课程是物理84,平均分是88.40
以下是实现该功能的Python代码:
```python
scores = {}
total_score = 0
count = 0
while True:
input_str = input()
if not input_str:
break
course, score = input_str.split()
score = int(score)
scores[course] = score
total_score += score
count += 1
max_course, max_score = max(scores.items(), key=lambda x: x[1])
min_course, min_score = min(scores.items(), key=lambda x: x[1])
average_score = total_score / count
print("最高分课程是{}{},最低分课程是{}{},平均分是{:.2f}".format(max_course, max_score, min_course, min_score, average_score))
```
代码解释:
首先定义一个空字典 `scores`,用于存储每门课程的成绩。同时定义变量 `total_score` 和 `count` 分别表示总分和课程数,用于计算平均分。
接下来进入一个无限循环,每次循环读入一行输入字符串 `input_str`,如果输入字符串为空则跳出循环。
将输入字符串按空格分隔为课程和成绩两个字符串,将成绩字符串转换为整数,并将课程和成绩分别存入字典 `scores` 中。同时将成绩加入总分中,课程数加 1。
循环结束后,使用 `max()` 和 `min()` 函数从字典 `scores` 中找到最高分和最低分对应的课程和成绩,使用格式化字符串输出结果。平均分计算公式为总分除以课程数,使用 `format()` 函数将结果保留两位小数并输出。
编写程序实现:输入一个字典内容,包含若干学生的课程成绩,统计每位同学的成绩总分,
以下是 Python 代码实现:
```python
# 输入字典内容,key为学生名字,value为课程成绩列表
scores = {
'小明': [80, 85, 90],
'小红': [70, 75, 80],
'小亮': [90, 95, 85]
}
# 统计每位同学的成绩总分
for name, score_list in scores.items():
total_score = sum(score_list)
print(f'{name}的总成绩为{total_score}')
```
输出结果为:
```
小明的总成绩为255
小红的总成绩为225
小亮的总成绩为270
```
这个程序首先输入一个字典,包含了若干学生的课程成绩。然后使用 for 循环遍历字典的每个键值对,计算每位同学的成绩总分,最后输出结果。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)