在 Range() 中謹慎使用小數步長值
Python 中的 range() 函數通常用於迭代一系列數字。但是,當嘗試使用十進制步長值(例如 0.1)時,您可能會遇到錯誤,指示步長參數不能為零。
避免直接使用十進制步長值
強烈建議不要直接在 range() 中使用十進制步長值。浮點舍入錯誤可能會導致不正確的結果,特別是在使用小步長值時。相反,建議用所需的點數來表示迭代間隔。
使用 NumPy 的 linspace() 函數
NumPy 函式庫提供了 linspace( ) 函數,它允許您指定多個點和範圍的端點。透過利用linspace(),您可以實現以下目標:
使用NumPy 的arange() 函數(謹慎)
如果您確實需要浮動-點步長值,可以使用NumPy的arange()函數。但是,請注意,浮點舍入錯誤仍然可能會導致問題,如下例所示:
在這種情況下,由於舍入錯誤,arange() 會產生一個長度為4 的數組預期長度為3 的數組。因此,如果精確度至關重要,那麼使用 linspace() 函數非常重要。
以上是為什麼我應該在 Python 的 `range()` 中避免小數步長以及如何獲得類似的結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!