Python 实现学生成绩单:输入成绩,构建字典并输出格式化表格
Python 实现学生成绩单:输入成绩,构建字典并输出格式化表格
本代码演示如何使用 Python 语言,输入四位学生('张三', '李四', '王五', '赵六')的各科成绩,构建成绩单字典,并按照指定格式输出表格,展示每个学生的各科成绩。
代码实现
# 定义同学姓名列表
students = ['张三', '李四', '王五', '赵六']
# 定义科目列表
subjects = ['Python', 'C/C++', 'Java', 'Matlab']
# 定义成绩单字典
score_dict = {}
# 循环输入各科成绩
while True:
# 读入一行输入
line = input().strip()
# 判断是否为结束标志
if line == 'End':
break
# 拆分科目和成绩
subject, *scores = line.split()
# 将成绩转换为整数
scores = list(map(int, scores))
# 将科目和成绩加入成绩单字典
score_dict[subject] = scores
# 输出表头
print('Name', end=' ')
for subject in subjects:
print(subject, end=' ')
print()
# 输出每个同学的成绩
for i, student in enumerate(students):
print(student, end=' ')
for j, subject in enumerate(subjects):
print(score_dict[subject][i], end=' ')
print()
输入样例
Python 80 90 80 100
C/C++ 90 100 70 90
Java 85 75 100 80
Matlab 90 80 90 85
End
输出样例
Name Python C/C++ Java Matlab
张三 80 90 85 90
李四 90 100 75 80
王五 80 70 100 90
赵六 100 90 80 85
代码解析
- 定义列表和字典:
students列表存储学生姓名。subjects列表存储科目名称。score_dict字典用于存储成绩,键为科目名称,值为一个列表,包含所有学生的该科目成绩。
- 循环输入成绩:
- 使用
while循环不断读入输入行,直到遇到End标志。 - 使用
split()方法将每行输入拆分为科目和成绩。 - 使用
map()函数将成绩字符串转换为整数。 - 将科目和成绩列表添加到
score_dict字典中。
- 使用
- 输出表格:
- 输出表头,包括
Name和所有科目名称。 - 使用嵌套循环遍历
students列表和subjects列表,输出每个学生的各科成绩。
- 输出表头,包括
总结
本代码演示了如何使用 Python 语言实现学生成绩单,包括输入成绩、构建成绩单字典和输出格式化表格。代码简洁易懂,可作为学习 Python 数据处理和表格输出的参考。
原文地址: https://www.cveoy.top/t/topic/nVoG 著作权归作者所有。请勿转载和采集!