1. 程式人生 > >List 集合總和案例

List 集合總和案例

List 集合 list案例

案例01: 有五名學生【張三,李四,王五,趙六,馬七】每個學生有五門科目【語文、數學、英語、物理、化學】,為這5位同學隨機生成5門考試的成績【成績介於50-100間】

需求:按照均分的倒序打印出成績的明細

import random

# student_name 存儲學生姓名

student_name = ["張三", "李四", "王五", "趙六", "馬七"]

# student_result 存儲所有學生成績明細

student_result = []

# 使用循環生成每個人的每個科目的成績

for i in

range(len(student_name)):

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

(i))

# 輸出成績的明細

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 集合總和案例