提供されたデータ (生徒には、名前、言語、数学、および英語のスコア情報が含まれます。以下の例を参照してください。プログラムは、不確実な数の生徒を処理できなければなりません) に従って、関数を定義することによって実現されます。各生徒の名前を計算して出力します。国語、数学、英語、および合計スコアのレポートを作成し、最後に生徒数と平均合計スコアを出力します。
サンプルコード:
def report_card(students):
names = []
chineses = []
maths = []
englishes = []
totals = []
for student in students:
names.append(student[0])
chineses.append(student[1])
maths.append(student[2])
englishes.append(student[3])
totals.append(sum(student[1:]))
print("姓名\t语文\t数学\t英语\t总分")
for i in range(len(students)):
print(f"{names[i]}\t{chineses[i]}\t{maths[i]}\t{englishes[i]}\t{totals[i]}")
num_students = len(students)
avg_total = sum(totals) / num_students
print(f"学生人数:{num_students}")
print(f"平均总分:{avg_total}")
students = [("张三", 80, 90, 70), ("李四", 70, 85, 90), ("王五", 90, 70, 80)]
report_card(students)
出力結果:
姓名 语文 数学 英语 总分
张三 80 90 70 240
李四 70 85 90 245
王五 90 70 80 240
学生人数:3
平均总分:241.66666666666666