Bereich von Fließkommazahlen ermitteln in Python
-
Ermitteln des Bereichs von Gleitkommazahlen mithilfe der Methode
numpy.arange()
in Python - Bereich von Fließkommazahlen mit Hilfe des List Comprehensions ermitteln in Python
- Bereich von Fließkommazahlen mit Hilfe des Generator-Verständnisses ermitteln in Python
- Ermitteln des Bereichs von Gleitkommazahlen mithilfe der Generatorfunktion in Python
-
Ermitteln des Bereichs von Gleitkommazahlen mithilfe der Methode
numpy.linspace()
in Python
In diesem Tutorial werden verschiedene Methoden untersucht, um eine Folge von Float-Werten in Python zu erhalten. Angenommen, wir benötigen eine Reihe von Zahlen mit einer Schrittgröße von 0.1
, aber das Problem ist, dass die Funktion range()
keinen Gleitkommawert als Eingabe akzeptiert und stattdessen einen TypeError
zurückgibt.
Mit den unten erläuterten Methoden können wir in Python eine Folge von Float-Werten mit einer einheitlichen Schrittgröße generieren.
Ermitteln des Bereichs von Gleitkommazahlen mithilfe der Methode numpy.arange()
in Python
Die Methode numpy.arange(start, stop, step)
gibt eine Folge von Werten innerhalb der Werte start
und stop
zurück, deren Schrittgröße dem Wert step
entspricht. Der Standardwert der Argumente start
und step
ist 0 bzw. 1.
Der Vorteil der Verwendung der Methode numpy.arange()
besteht darin, dass der Bereich der Gleitkommawerte generiert werden kann. Es ist jedoch keine Standardfunktion von Python, und die Bibliothek NumPy
wird benötigt, um es zu verwenden.
Der folgende Beispielcode zeigt, wie mit der Methode numpy.arange()
die Folge von Werten von 0
bis 1
mit einer Schrittgröße von 0.1
ermittelt wird.
import numpy as np
seq = np.arange(0, 1, 0.1)
print(seq)
Ausgabe:
[0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9]
Bereich von Fließkommazahlen mit Hilfe des List Comprehensions ermitteln in Python
Das List Comprehensions ist die syntaktische Methode zum Erstellen einer neuen Liste aus einer vorhandenen Liste in Python. Wir können den Bereich oder die Folge von Gleitkommawerten generieren, indem wir eine neue Liste aus der Folge von Werten erstellen, die von der Methode range()
zurückgegeben werden.
Da die Methode range()
nur die Folge von ganzen Zahlen erzeugen kann, müssen wir jeden Wert der Folge mit dem erforderlichen Gleitkommawert multiplizieren oder dividieren, um die gewünschte Folge zu erhalten. Da das Multiplizieren einer Ganzzahl, d. H. 3
mit dem Gleitkommawert 0.1
, 0.30000000000000004
ergibt, muss das Teilen der Ganzzahl mit 10
bevorzugt werden, um die Folge von Gleitkommawerten zu erzeugen.
Der folgende Beispielcode zeigt, wie Sie den Bereich oder die Folge von Float-Werten in Python mithilfe der List Comprehensions-Methode abrufen.
seq = [x / 10 for x in range(0, 10)]
print(seq)
Ausgabe:
[0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9]
Bereich von Fließkommazahlen mit Hilfe des Generator-Verständnisses ermitteln in Python
Das Generatorverständnis ist ein syntaktischer Ansatz, der dem List Comprehensions ähnelt und ein iterierbares Generatorobjekt in Python erstellt. Wir können vom Generator aus auf den neuen Wert zugreifen, indem wir die Methode next()
verwenden oder die gesamte Sequenz mit der Schleife for
durchlaufen.
Der folgende Beispielcode zeigt, wie das Generatorverständnis verwendet wird, um den Float-Bereich in Python abzurufen.
seq = (x / 10 for x in range(0, 10))
for x in seq:
print(x, end=" ")
Ausgabe:
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
Ermitteln des Bereichs von Gleitkommazahlen mithilfe der Generatorfunktion in Python
Obwohl das Generatorverständnis eine präzise und einfachere Möglichkeit ist, ein Generatorobjekt in Python abzurufen, ist die Generatorfunktion eine wiederverwendbare und bessere Möglichkeit, einen Bereich von Float-Werten mithilfe der Werte start
, stop
und step
abzurufen unserer Wahl.
Der folgende Beispielcode zeigt, wie eine Generatorfunktion mit dem Schlüsselwort yield
erstellt wird, ähnlich der Funktion range()
in Python.
def myrange(start, stop, step):
while start < stop:
yield start
start = start + step
seq = myrange(0.0, 1.0, 0.1)
for x in seq:
print(x)
Ermitteln des Bereichs von Gleitkommazahlen mithilfe der Methode numpy.linspace()
in Python
Die Methode numpy.linspace()
gibt wie die Methode numpy.arange()
die Wertesequenz vom Wert start
zum Wert stop
zurück. Anstelle des Arguments step
verwendet die Methode numpy.linspace()
das Argument num
, das die Anzahl der Werte angibt, die vom Wert start
bis zum Wert stop
generiert werden sollen.
Daher müssen wir die Anzahl der Werte num
für die Methode numpy.linspace()
angeben. Die folgende Formel kann den Wert von num
mit den Werten start
, stop
und step
berechnen.
num = (stop - start)/step
Der folgende Beispielcode zeigt, wie Sie mit numpy.linspace()
den Float-Bereich von 0
bis 1
mit dem step
gleich 0.1
generieren. Der Wert num
für die gewünschte Sequenz ist (0 - 1)/0.1 = 10
.
seq = np.linspace(0, 1, 10, endpoint=0)
print(seq)
Ausgabe:
array([0. , 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9]
Das Argument endpoint
gibt an, ob der letzte Wert der Sequenz eingeschlossen werden soll oder nicht, da die Sequenz standardmäßig bei 0
beginnt.