2 jmu-python-查成绩 分数 6 作者 蔡莉白 单位 集美大学 从键盘输入一个学生所有课程的成绩,输入格式为”课程名:成绩“,每门课占一行,以空行结束。随后提示”请输入要查询的课程:“,用户从键盘输入课程名,查询并输出该课程的成绩,要求进行异常处理,对不存在的课程进行捕捉处理。 输入格式: 输入学生所有课程的成绩,每门课占一行,格式为”课程名:成绩“,以空行结束 在提示后输入课程名 输出格式: 如果课程存在,直接输出成绩,否则提示”没有该门课程“
时间: 2024-03-27 14:36:19 浏览: 24
好的,这是一道关于Python编程的问题,让我们一步步来看。
首先,我们需要从键盘输入学生所有课程的成绩,每门课占一行,格式为”课程名:成绩“,以空行结束。这可以通过以下代码实现:
```
sub=[] #科目列表 sore=[] #成绩列表
while(1):
s=input()
if s:
x=s.split(":")
sub.append(x[0]) #把输入的科目append到sub列表
sore.append(x[1]) #把输入的成绩append到sore列表
else:
break #s为空跳出循环
```
然后,我们需要提示用户输入要查询的课程名称,并将其存储在变量`check`中:
```
check=input('请输入要查询的课程:\n')
```
接下来,我们需要将科目和成绩合并为一个字典,并根据用户输入的课程名查询对应的成绩。如果找到了该课程,直接输出其对应的成绩;否则,输出“没有该门课程”。这可以通过以下代码实现:
```
zipped=zip(sub,sore) #将sub与sore合并
d=dict(zipped) #将合并的数据转换成字典
try:
print(d[check]) #输入正确的课程即能输出相应的成绩,否则异常处理
except:
print('没有该门课程')
```
最终,这个程序可以如下所示:
```
sub=[] #科目列表 sore=[] #成绩列表
while(1):
s=input()
if s:
x=s.split(":")
sub.append(x[0]) #把输入的科目append到sub列表
sore.append(x[1]) #把输入的成绩append到sore列表
else:
break #s为空跳出循环
check=input('请输入要查询的课程:\n')
zipped=zip(sub,sore) #将sub与sore合并
d=dict(zipped) #将合并的数据转换成字典
try:
print(d[check]) #输入正确的课程即能输出相应的成绩,否则异常处理
except:
print('没有该门课程')
```
希望这个程序可以解决你的问题!