Heim >Backend-Entwicklung >Python-Tutorial >Wie erstelle ich in Python einen Bereich mit einem nicht ganzzahligen Schritt?
So durchlaufen Sie einen nicht ganzzahligen Bereich
Wenn Sie versuchen, mit range() einen Bereich mit einem Dezimalschrittwert zu erstellen, müssen Sie Möglicherweise wird ein Fehler angezeigt, der besagt, dass das Schrittargument nicht Null sein darf. Dies liegt daran, dass range() ganzzahlige Werte für die Start-, Stopp- und Schrittparameter erwartet.
Lösung mit NumPys Linspace
Um dieses Problem zu umgehen und einen Bereich mit zu erstellen Wenn Sie einen nicht ganzzahligen Schrittwert angeben, sollten Sie die Verwendung der Linspace-Funktion von NumPy in Betracht ziehen. Linspace nimmt die Anzahl der zurückzugebenden Punkte und ermöglicht Ihnen die Angabe, ob der richtige Endpunkt einbezogen werden soll oder nicht. Zum Beispiel:
import numpy as np # Create a range from 0 to 1 with 11 equally spaced points (including 1) points = np.linspace(0, 1, 11) # Create a range from 0 to 1 with 10 equally spaced points (excluding 1) points_excl = np.linspace(0, 1, 10, endpoint=False)
Lösung mit NumPys Bereichsbereich
Während die Verwendung eines Gleitkomma-Schrittwerts aufgrund möglicher Rundungsfehler im Allgemeinen nicht empfohlen wird, stellt NumPy den Bereich bereit Funktion, die speziell für diesen Zweck entwickelt wurde. Beachten Sie jedoch, dass es dennoch zu Rundungsfehlern kommen kann:
import numpy as np # Create a range from 0.0 to 1.0 with a step value of 0.1 points = np.arange(0.0, 1.0, 0.1) # Example of a potential rounding error using arange points = np.arange(1, 1.3, 0.1) # Expected length: 3, Actual length: 4
Das obige ist der detaillierte Inhalt vonWie erstelle ich in Python einen Bereich mit einem nicht ganzzahligen Schritt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!