List 集合總和案例
需求:按照均分的倒序打印出成績的明細
import random
# student_name 存儲學生姓名
student_name = ["張三", "李四", "王五", "趙六", "馬七"]
# student_result 存儲所有學生成績明細
student_result = []
# 使用循環生成每個人的每個科目的成績
for i in
list_temp = [] # 5門科目的成績
for j in range(5):
list_temp.append(random.randint(50,100)) # 每次一個成績
# 把5門科目的成績插入到student_result
student_result.append(list_temp)
# 統計出每個人的總分
student_total_result = [] # 存儲每個人的總分
for i in student_result:
student_total_result.append(sum
# 輸出成績的明細
print("名次 姓名 語文 數學 英語 物理 化學 總分 均分")
print("==================================================================")
for i in range(len(student_name)):
max_result = max(student_total_result) # 獲取最高分分數
max_index = student_total_result.index(max_result)
# 打印-名次
print(i+1, end="\t\t")
# 打印-姓名
print(student_name[max_index], end="\t")
# 打印-成績5門
for i in range(5):
print(student_result[max_index][i], end="\t ")
# 打印-總分
print(max_result, end="\t ")
# 打印-均分
print(max_result/5)
# 刪除信息-總分
student_total_result.pop(max_index)
# 刪除信息-成績明細
student_result.pop(max_index)
# 刪除信息-姓名
student_name.pop(max_index)
print("==================================================================")
執行結果:
C:\python\python.exe C:/python/demo/file2.py
名次 姓名 語文 數學 英語 物理 化學 總分 均分
==================================================================
1 張三 93 79 74 99 96 441 88.2
2 趙六 80 87 99 52 77 395 79.0
3 李四 64 66 82 87 80 379 75.8
4 馬七 81 91 71 72 53 368 73.6
5 王五 59 57 56 60 99 331 66.2
==================================================================
Process finished with exit code 0
List 集合總和案例