python統計全班的成績(numpy的使用)


按照給出的學生成績,統計各科成績的平均成績、最小成績、最大成績、方差、標准差、並按總成績排序,最后進行成績輸出。

 

 代碼:

import numpy as np

score_type = np.dtype({'names':["name","chinese","english","math"],'formats':['S32','i', 'i', 'i']})
score = np.array([("zhangfei",66,65,30),("guanyu",95,85,98),("zhangyun",93,92,96),("huangzhong",90,88,77),
                  ("dianwei",80,90,90)],dtype = score_type)
chineses = score[:]["chinese"]
englishes = score[:]["english"]
maths = score[:]["math"]
total = score[:]['chinese'] +score[:]['english']+score[:]['math']
print('語文平均成績:',np.mean(chineses))
print('英語平均成績:',np.mean(englishes))
print('數學平均成績:',np.mean(maths))
print('語文最小成績:',np.amin(chineses))
print('英語最小成績:',np.amin(englishes))
print('數學最小成績:',np.amin(maths))
print('語文最大成績:',np.amax(chineses))
print('英語最大成績:',np.amax(englishes))
print('數學最大成績:',np.amax(maths))
print('語文方差:',np.var(chineses))
print('英語方差:',np.var(englishes))
print('數學方差:',np.var(maths))
print('語文標准差:',np.std(chineses))
print('英語標准差:',np.std(englishes))
print('數學標准差:',np.std(maths))
print('按總成績排序:',np.sort(total))

結果:

語文平均成績: 84.8
英語平均成績: 84.0
數學平均成績: 78.2
語文最小成績: 66
英語最小成績: 65
數學最小成績: 30
語文最大成績: 95
英語最大成績: 92
數學最大成績: 98
語文方差: 114.96000000000001
英語方差: 95.6
數學方差: 634.56
語文標准差: 10.721940122944169
英語標准差: 9.777525249264253
數學標准差: 25.19047439013406
按總成績排序: [161 255 260 278 281]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM