Python

Python xrange vs. Reichweite

Python xrange vs. Reichweite
Bis zur Python-Version 2.x wurden in dieser Sprache insgesamt zwei zugrunde liegende Methoden verwendet, um die Liste der ganzen Zahlen innerhalb eines angegebenen Bereichs zu generieren. Im Folgenden sind die beiden Methoden aufgeführt:

Reichweite ()
xrange ()

Mit der neuesten Python-Version (ab 3) wurde range () zurückgezogen und xrange () wurde dann in range () geändert. Jetzt gibt es in Python 3 nur eine Funktion für diese Methode, d.h.e., Reichweite (). In Python 3 ist die range()-Funktion nur eine weitere Möglichkeit, die ältere Version von xrange() von Python 2 zu implementieren.x. Hier werden wir die beiden in Beziehung setzen.

Xrange ()

Die xrange () wird verwendet, um eine Zahlenfolge wie die range ()-Funktion zu erstellen.

Syntax

Die Syntax zur Definition von xrange() lautet:

xrange(Start,Ende,Schritt)

Die Funktion wird verwendet, um den Zahlenbereich von (ist enthalten) bis zum Ende (ist nicht enthalten) zu definieren.

Parameter

Nachfolgend finden Sie die Liste der erforderlichen Parameter:

Start: Startposition der Zahlenfolge
Ende: Endposition der Zahlenfolge
Schritt: Die Unterscheidung zwischen zwei aufeinanderfolgenden Zahlen in der Reihe.

Beispiele

Im folgenden Beispiel werden wir die Möglichkeiten zur Definition von xrange überprüfen.

Hier geben wir nur die Endposition an.

Der Endwert wird also auf 5 gesetzt, und dann erhalten wir die Endposition gedruckt, wie unten gezeigt:

Jetzt sehen wir die Methode zum Aufrufen von range, die Syntax zum Aufrufen von end lautet:

>>> x = xrange(Ende)

Dann lassen wir es drucken.

Wir erhalten den Bereich in der Ausgabe, wie oben gezeigt.

Jetzt definieren wir sowohl den Start- als auch den Endpunkt. Hier ist der Startpunkt 2 und der Endpunkt ist 5. Wir haben dann die Start- und Endpositionen gedruckt, wie unten gezeigt:

Danach erstellen wir eine Zahlenfolge aus unseren Start- und Endpunkten, d. h.e., 2 bis 5.

>>> y = xrange(Anfang, Ende)

Schließlich werden wir die Methode zum Definieren des Startpunkts, des Schrittes und des Endpunkts überprüfen. Sobald wir alle drei Parameter definiert haben; wir werden sie ähnlich wie die unten gezeigte Methode aufrufen:

Um nun den xrange für diese drei Parameter aufzurufen, verwenden wir die folgende Syntax:

>>> z = xrange(Start,Schritt,Ende)

Reichweite ()

Range() wird verwendet, um eine Liste zu erstellen und ist eine schnellere Funktion für mehrere Iterationen.

Syntax

Die folgende Syntax wird verwendet:

>>> Bereich(Start,Ende,Schritt)

Beispiele

Für den ersten Fall definieren wir den Endwert. Die dafür verwendete Syntax lautet:

>>> Bereich(Ende)

Im folgenden Beispiel verwenden wir also 3 als Endwert des Bereichs. Wenn wir es gedruckt bekommen, gibt es die Werte zurück, mit Ausnahme des Endwerts.

Im folgenden Beispiel verwenden wir das Beispiel der Beschreibung des Start- und Endpunktes. Der Wert beginnt bei 1 und endet bei 10 (indem Sie ihn ausschließen). Der Startpunkt ist enthalten, aber der Endpunkt wird weggelassen. Die Syntax ähnelt der unten angegebenen:

>>> Bereich (Anfang, Ende)

Wir definieren also den Startpunkt und dann den Endpunkt, der 1 bzw. 10 ist.

Im folgenden Beispiel haben wir nun die Stufenfunktion. Die Funktion, die die Lücke zwischen zwei beliebigen Punkten innerhalb der Sequenz definiert. Der Wert beginnt bei 0 und endet bei 10 (indem Sie ihn ausschließen). Die verwendete Syntax ist unten angegeben:

>>> Bereich (Start,Schritt,Ende)

Das Beispiel ist unten angegeben, wobei 2 der Schrittwert ist.

Vorteile

Reichweite ()

Es ist schneller, wenn die Iterationen mehrmals durchgeführt werden sollen. range() hat nur die ganzzahligen Echtzeit-Objektwerte. In Bezug auf den Speicher wird es nicht gut ausgeführt.

xrange()

Es muss das Integer-Objekt jedes Mal neu erstellen. xrange() ist dies nicht, da es keine Slices und Listenmethoden unterstützt. xrange() benötigt die gleiche Menge an Speicher. Was die Leistung angeht, insbesondere wenn Benutzer über einen größeren Bereichswert iterieren, schneidet xrange() viel besser ab.

Ähnlichkeiten zwischen Python 2- und Python 3-Bereich und xrange

xrange von Python 2 hat eine beschreibende Darstellung in Form der Zeichenfolge, die dem Bereichsobjektwert von Python 3 sehr ähnlich ist.

Der Wert von xrange() in Python 2 ist iterierbar, ebenso wie rang() in Python 3.

xrange() und range() haben beide einen Schritt-, End- und Startpunktwert. In beiden Fällen ist step ein optionales Feld, ebenso der Startwert.

Sowohl xrange von Python 2 als auch 3 unterstützen Längen, die in Vorwärts- oder Rückwärtsreihenfolge indiziert werden können. Hier ist ein Beispiel für dasselbe:

Unterschiede zwischen range() und xrange()

Da xrange() nur das Generator-Objekt mit den Werten auswertet, die von der Lazy-Evaluation benötigt werden, ist es schneller über den Bereich(). range() hilft bei der Rückgabe der Liste und enthält alle verwendbaren Objekte, während xrange() die einer Liste zugeordneten Objekte zurückgibt und nicht auf sie angewendet werden kann, sodass wir dies als Nachteil werten können.

Die in der Funktion range() verwendete Variable speichert den Wert von range und benötigt daher viel Speicher im Vergleich zu xrange(), das aufgrund der Variablen nur einen Teil des Speichers beansprucht. range() gibt ein Range-Objekt zurück, während xrange() ein Generator-Objekt zurückgibt.

Die Funktion range (1, 7, 2) gibt die Ausgabe [1, 3, 5] zurück und die Eingabe xrange(1, 7, 2) erzeugt die Ausgabe [1, 3, 5]. So können wir davon ausgehen, dass sie sich im Muster ähneln.

Fazit

range() und xrange() haben beide unterschiedliche Eigenschaften, wie oben beschrieben. Alle in diesem Tutorial erwähnten Vergleiche, zusammen mit den Beispielen, werden den Lesern helfen, ihre bevorzugte Methode basierend auf ihren Anforderungen besser auszuwählen better.

Kostenlose und Open-Source-Spiele-Engines für die Entwicklung von Linux-Spielen
Dieser Artikel behandelt eine Liste von kostenlosen und Open-Source-Spiele-Engines, die für die Entwicklung von 2D- und 3D-Spielen unter Linux verwend...
Shadow of the Tomb Raider für Linux Tutorial
Shadow of the Tomb Raider ist die zwölfte Erweiterung der Tomb Raider-Reihe – ein Action-Adventure-Franchise von Eidos Montrealdos. Das Spiel wurde vo...
So steigern Sie die FPS unter Linux?
FPS steht für Bilder pro Sekunde. Die Aufgabe von FPS besteht darin, die Bildrate bei Videowiedergaben oder Spielleistungen zu messen. In einfachen Wo...