簡體   English   中英

將值分配給numpy數組中的位置而不修改數組

[英]Assigning values to a position in a numpy array not modifying the array

我在使用數組時如何獲得精確值? 為什么結果是數組([0,0,0,0,0,0,0,0,0])但不是0.7?

overlap= np.array([0]*10)
tempi = np.zeros(10)
for i in range(10):
    for j in range(10):
        tempi[j] = 0.7;
    overlap[i] = max(tempi)
    print(max(tempi))

overlap

overlap (隱式)聲明為整數數組。 當您將浮點數分配給整數數組中的位置時,它們會被截斷(隱式強制轉換為整數)。

什么你想要做的,就是聲明overlap有一個dtypefloat -

overlap = np.array([0] * 10, dtype=np.float)

要么,

overlap = np.array([0.] * 10)

再次運行,你得到你期望的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM