![](/img/trans.png)
[英]How to fill the null values with the average of the above value and the below value in python?
[英]How do I get the above and below the average in python?
我有 3 個 GPA,通過將它們相加並除以 3 得到平均值。現在,我怎樣才能得到高於、低於和等於平均值的 GPA?
這是到目前為止的代碼:
GPA1 = 4.28
GPA2 = 3.91
GPA3 = 3.64
sum = GPA1 + GPA2 + GPA3
average = sum / 3
print(average)
我試過 If, Elif 語句......它對我不起作用。
提前致謝
一種可能的解決方案是:
GPA1 = 4.28
GPA2 = 3.91
GPA3 = 3.64
gpas = [GPA1, GPA2, GPA3] # pass everything into a list
average = sum(gpas)/len(gpas) # call it average so you don't override the inbuilt sum function
print(average)
below, above, equal = [], [], []
for gpa in gpas:
if gpa < average:
below.append(gpa)
elif gpa == average:
equal.append(gpa)
else:
above.append(gpa)
print("GPAs below:", below)
print("GPAs equal:", equal)
print("GPAs above:", above)
這里的關鍵是將 GPA 組合成一個列表。 然后你可以在 forloop 中迭代它們。 此外,避免使用 Python 保留的變量名稱,例如sum
,因為這樣您就無法再使用它們來獲取例如列表的總和 ( sum(gpas)
)。
將值保存在列表中並運行 for 循環以檢查條件。
gpaList = [GPA1, GPA2, GPA3]
for gpa in gpaList:
if gpa > average:
#do stuff
#for eg. print("Above average", gpa)
else:
#do stuff
#for eg. print("Below or equal to average", gpa)
你的問題有點含糊,我猜你是在問過程/算法
嘗試這個:
for I in [GPA1,GPA2,GPA3]:
if I>average:
Print ("above average" , I)
elif I==average:
Print ("equal to average" , I)
else:
Print (”below average" , I)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.