Python-Programm zum Abrufen der letzten angegebenen Anzahl von Elementen aus dem Array
Ein Array ist eine Datenstruktur, die aus vielen Elementen desselben Datentyps besteht und jedes Element durch einen Index identifiziert wird.
[2, 4, 0, 5, 8]
Arrays in Python
Python verfügt nicht über eine eigene Datenstruktur zur Darstellung eines Arrays. Wir können jedoch die Listendatenstruktur als Alternative zu den Arrays verwenden. Hier verwenden wir list ein Array:
[10, 4, 11, 76, 99]
Python bietet einige Module, um besser mit Arrays arbeiten zu können, nämlich Numpy und Array-Module.
In diesem Artikel werden wir verschiedene Möglichkeiten sehen, auf die letzte angegebene Anzahl von Elementen aus einem Array zuzugreifen.
Eingabe-Ausgabe-Szenarien
Angenommen, wir haben ein Eingabearray mit 9 ganzzahligen Werten. Und in der Ausgabe wird auf die letzten Elemente basierend auf der angegebenen Anzahl zugegriffen.
Input array:
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Output:
[7,8,9]
Auf die letzten 3 Elemente 7, 8, 9 wird über das Eingabearray zugegriffen.
Input array:
[10, 21, 54, 29, 2, 8, 1]
Output:
[29, 2, 8, 1]
Die letzten 4 Elemente werden aus dem Eingabearray abgerufen.
In den folgenden Beispielen verwenden wir hauptsächlich Python-Negativindizierungs- und Slicing-Funktionen, um die letzten paar Elemente abzurufen.
Negative Indizierung in Python
Python unterstützt auch die negative Indizierung, die nichts anderes bedeutet, als Elemente vom Ende des Arrays mit dem negativen Vorzeichen zu zählen und bei 1 und nicht bei 0 zu beginnen.
[1, 2, 3, 4, 5]
-5 -4 -3 -2 -1
Das erste Element wird durch den Indexwert –n identifiziert und das letzte Element ist -1.
Schneiden in Python
Mit der Slicing-Funktion in Python ist der Zugriff auf die Gruppe von Elementen aus einer Sequenz mit der kürzesten Syntax möglich.
Syntax
sequence_object[start : end : step]
Start: Der Startindex, an dem das Slicing des Iterables beginnt. Standardmäßig ist es 0.
Ende: Der Endindex, an dem die Aufteilung der Liste endet. Der Standardwert ist die Länge des iterierbaren Objekts. Und dieser Wert ist ausgeschlossen.
Verwenden von Liste
Mithilfe der List-Slicing-Funktion können wir auf die letzte angegebene Anzahl von Elementen aus einem Array zugreifen.
Beispiel
Nehmen wir ein Beispiel und wenden Listen-Slicing an, um auf die letzten Elemente eines Arrays zuzugreifen.
# creating array
lst = [1, 2, 0, 4, 2, 3, 8]
print ("The original array is: ", lst)
print()
numOfItems = 4
# Get last number of elements
result = lst[-numOfItems:]
print ("The last {} number of elements are: {}".format(numOfItems, result))
Ausgabe
The original array is: [1, 2, 0, 4, 2, 3, 8]
The last 4 number of elements are: [4, 2, 3, 8]
Auf die letzten 4 Elemente wird vom angegebenen Array aus mit dem negativen Index zugegriffen.
Verwenden des NumPy-Arrays
Lassen Sie uns ein NumPy-Array verwenden, um auf die letzte angegebene Anzahl von Elementen zuzugreifen.
Beispiel
In diesem Beispiel greifen wir mithilfe negativer Indexwerte auf die Numpy-Array-Elemente zu.
import numpy
# creating array
numpy_array = numpy.random.randint(1, 10, 5)
print ("The original array is: ", numpy_array)
print()
numOfItems = 2
# get the last element
result = numpy_array[-numOfItems:]
print ("The last {} number of elements are: {}".format(numOfItems, result))
Ausgabe
The original array is: [4 6 9 7 5]
The last 2 number of elements are: [7 5]
Wir haben erfolgreich auf die letzten beiden Elemente des NumPy-Arrays zugegriffen. Element 7 wird mit -2 indiziert und 5 wird mit -1 indiziert.
Verwendung des Array-Moduls
Mit der Methode array() erstellen wir ein Array mit einem bestimmten Datentyp.
Beispiel
In diesem Beispiel erstellen wir ein Array mithilfe des Array-Moduls.
import array
# creating array
arr = array.array('i', [6, 5, 8, 7])
print ("The original array is: ", arr)
print()
numOfItems = 2
# remove last elements
result = arr[-numOfItems:]
print ("The last {} number of elements are: {}".format(numOfItems, result))
Ausgabe
The original array is: array('i', [6, 5, 8, 7])
The last 2 number of elements are: array('i', [8, 7])
Im obigen Beispiel wurde erfolgreich auf die angeforderte Anzahl von Elementen zugegriffen. Das Python-Slicing erzeugt keinen Fehler, wenn die angeforderte Anzahl von Elementen die Gesamtzahl der Elemente in einer Sequenz überschreitet.