big_set=[]
for i in results_histogram_total:
big_set.append(100*(i/sum_total))
因爲我檢查i
big_set返回[0,0,0,0,0,0,0,0........,0]
蟒蛇:僅追加 '0'
這個錯誤,這是>0
我到底做錯了什麼?
big_set=[]
for i in results_histogram_total:
big_set.append(100*(i/sum_total))
因爲我檢查i
big_set返回[0,0,0,0,0,0,0,0........,0]
蟒蛇:僅追加 '0'
這個錯誤,這是>0
我到底做錯了什麼?
如果sum_total是一個整數(什麼是sum_total .__ class__等於?), python似乎使用整數除法。
嘗試使用i/float(sum_total)。
可能與浮法師有關。
i是可能比sum_total其在整數除法返回0
100 * 0少是0。
嘗試強制轉換爲浮點數。
試試這個list comprehension代替
big_set = [100*i/sum_total for i in results_histogram_total]
注意/
截斷在Python2,所以你不妨使用
big_set = [100.0*i/sum_total for i in results_histogram_total]
在Python 2.x中,使用from __future__ import division
得到健全分工行爲。
當我想要一個浮動除以它總是x /浮動(y);但是因爲整數和浮點數不是對象,所以它們沒有類,但它們確實有一個可以用類型說明(x) – 2010-08-05 18:54:01
@Dan進行測試的類型,int類型爲int,浮點類型爲float類型,類型是類。並且整數和浮點數是對象! – 2010-08-05 18:56:16
或者嘗試'from __future__ import division'來得到'/'的確切結果 – 2010-08-05 19:01:51