[問題] 新手發問

作者: veryhungry12 (hungry1212)   2016-08-31 14:08:55
這是能計算中位數及平均值的程式
http://tinyurl.com/gnhnc79
if numbers:
index = int(len(numbers) / 2)
median = numbers[index]
if index and index * 2 == len(numbers):
median = (median + numbers[index - 1]) / 2
想請問這幾行是甚麼意思呢?
index不是能找到最左邊的數字嗎,可是等於nunbers的長度...
我不太懂...想請各位解答..謝謝
作者: Yshuan (倚絃)   2016-08-31 14:25:00
numbers已經過泡沫排序, line 1&2拿中位數 3&4為檢查偶數個元素情況, 中位數是最中間兩者平均
作者: veryhungry12 (hungry1212)   2016-08-31 16:41:00
謝謝y大的回答,我知道它們的意思了,我想問一下line 3怎麼這樣寫呢?我看不太懂....
作者: asilzheng (asil)   2016-08-31 23:12:00
在numbers有4或5個的狀況下,index均為2,所以用index * 2 == len(numbers)的方式來判斷是偶數
作者: veryhungry12 (hungry1212)   2016-09-01 01:12:00
了解!謝謝a大

Links booklink

Contact Us: admin [ a t ] ucptt.com