我已經閱讀了關於這個主題的幾個問題,但我無法找到對我的具體問題的好答案。計算一個數組中2個值之間的數字量
我有列表:
l = [0.25, 0.875, 0.7, 0.175, 0.6, 0.55, 0.525]
我必須寫一個返回整數作爲結果的列表的方法,A分數即數,B分數的數量和C分數的數量,分別。 A分數是至少60%的分數,C分數是嚴格低於50%的分數。所有其他分數都是B分數。
所以,我們需要創建的列表是:
[3, 2, 2]
我已經試過與此代碼的工作:
a = 0
b = 0
c = 0
for i in l:
if i>=0.6:
a+=1
elif i<0.5:
c+=1
else:
b+=1
return [a,b,c]
有誰知道是否有更好的辦法解決這個問題?
快速 「黑客」 來修復你的方法是'[總和(1我在l如果我> 0.6)]',但你需要爲每個條件執行此操作,這將導致效率(在列表中多次遍歷)。你最好使用簡單明確的for循環。 – DeepSpace
您可以對列表進行排序,還是您有更大的列表,這些列表可能無法排序? – TheDetective
在我看來,「最短」的解決方案很少是最好的。我屬於喜歡可讀性的集團。 –