Python-Array vs. Liste: Unterschiede & Anwendungsfälle
Veröffentlicht: 2021-11-03Python hat in den letzten Jahren die Oberhand über andere Sprachen in der Data Science gewonnen, und seine Datenstrukturen spielen eine entscheidende Rolle. Python verfügt über eine große Anzahl von Datenstrukturen, von denen Array und Liste die beliebtesten sind, die wir heute besprechen werden.
Arrays und Lists sind zwei prominente Datenstrukturen in Python, die sich in vielen Aspekten ähneln. Sie können beide verwendet werden, um Daten zu speichern und es uns ermöglichen, sie zu durchlaufen, sie zu schneiden und sogar mit der Indizierungsmethode auf ihre Elemente zuzugreifen. Was ist dann der Unterschied zwischen Liste und Array in Python? Nun, das werden wir in diesem Artikel besprechen.
Inhaltsverzeichnis
Arrays in Python
Ein Array ist eine zusammenhängende Datenstruktur, die homogene Elemente enthält, dh die Elemente, die zum gleichen Datentyp gehören.
Im Folgenden sind die Hauptmerkmale aufgeführt, die Arrays in Python aufweisen:
- Die zusammenhängende Natur des Arrays ermöglicht, dass die Daten an benachbarten Speicherstellen gespeichert werden. Dies erleichtert das Ausführen von Operationen an Array-Elementen.
- Ein Array in Python kann auf zwei Arten deklariert werden:
- Verwendung des Array -Moduls
import array # Importieren des 'array'-Moduls
myArray = array.array('i', [10, 20, 30]) # Array-Deklaration
# erstelltes Array: [10, 20, 30]
Hinweis: In der obigen Deklaration muss der Formatcode angegeben werden. Hier ist „i“ ein Formatcode, der für Integer steht.
- Verwenden des NumPy -Moduls
import numpy # Importieren des 'numpy'-Moduls
myArray = numpy.array([10, 20, 30]) # Array-Deklaration
# erstelltes Array: [10, 20, 30]
- Array-Elemente sind geordnet . Jedes Element hat einen zugeordneten ganzzahligen Index. Beispielsweise werden in arr[10, 20, 30] '10', '20' und '30' an den Indizes 0, 1 bzw. 2 im Speicher gespeichert.
Hinweis: Die Array-Indizierung in Python beginnt bei 0.
- Ein Array kann nur Werte gleichen Typs enthalten, also homogene Elemente. Zum Beispiel,
arr[1, 2, 3]
arr['a', 'b', 'c']
Ein Array in Python wird im Allgemeinen verwendet, um eine Liste ähnlicher Elemente zu speichern. Ein realer Anwendungsfall eines Displays kann darin bestehen, die Aktienkurse einer bestimmten Aktie für eine Reihe von Tagen zu speichern. Der Schlusskurs der Aktie bleibt für eine bestimmte Aktie und einen bestimmten Tag erhalten. Das bedeutet, dass das Speichern solcher Details in einer unveränderlichen Datenstruktur wie einem Array viel sinnvoller ist.
Tatsächlich werden NumPy-Arrays im Allgemeinen zum Speichern von Daten aus großen Datensätzen in der Datenwissenschaft und im maschinellen Lernen verwendet. Jedes NumPy-Array entspricht einem Feature in einem Datensatz.
Listen in Python
Eine Liste ist einer der vier eingebauten Container oder Datenstrukturen, die in Python unterstützt werden. Einer der Hauptvorteile der Verwendung von Listen besteht darin, dass eine einzelne Liste Werte mehrerer Datentypen enthalten kann.
Im Folgenden sind die Hauptmerkmale aufgeführt, die Listen in Python aufweisen:
- Listen sind flexibler in Bezug auf die Datenspeicherung. Sie können heterogene Daten enthalten, dh Elemente unterschiedlichen Typs. Zum Beispiel,
[1, 'Hallo', ['x', 'y']]
- Auch Listen sind geordnet , und auf die in einer Liste gespeicherten Elemente kann über ihre Indizes zugegriffen werden. Negative Indizes können verwendet werden, um auf ein Element vom Ende der Liste zuzugreifen. Zum Beispiel.,
meineListe = [20, 40, 'Hallo', 'Welt']
# das vorletzte Element drucken
print(meineListe[-2])
Ausgabe
- Listen können nach der Initialisierung der Liste einfach mutiert werden. Um einen beliebigen Wert zu ändern, greifen Sie über den Index des Elements darauf zu.
Autos = ['Ford', 'Tesla', 'Jaguar']
Autos[2] = 'BMW'
- Mit dem Konzept der verschachtelten Listen können auch mehrdimensionale Listen in Python implementiert werden. Diese mehrdimensionalen Listen können in Python als mehrdimensionale Arrays verwendet werden.
meinArr = [[1, 2], [3, 4]]
# erstelltes 2-D-Array:
# |1, 2|
# |3, 4|
Ein realer Anwendungsfall einer mehrdimensionalen heterogenen Liste in Python kann darin bestehen, eine Reihe von Produktdetails wie Produkttyp, Kategorie, Einstandspreis, Verkaufspreis usw. zu speichern. Jede Liste in einer solchen mehrdimensionalen Liste repräsentiert Ein Produkt. Da die Listen veränderbar sind, wird es einfacher, die Produktdetails jederzeit zu ändern.
Wenn Sie ein aufstrebender Python-Entwickler sind, ist das Behandeln der grundlegenden Unterschiede zwischen Array und Liste in Python ein wichtiger Aspekt. Lassen Sie uns also ohne weitere Umschweife direkt zu einer tabellarischen Beschreibung von Python Array vs. List übergehen.
Kennen Sie den Unterschied zwischen Array und Liste in Python
Python Array vs List : Wer ist der Gewinner?
PARAMETER | LISTE | ARRAY |
Erklärung | Listen müssen nicht deklariert werden, da sie in Python eingebaut sind. Liste = [ 10 , 20 , 30 ] | Sie müssen ein Array-Modul oder eine NumPy - Bibliothek importieren, um ein Array zu deklarieren. my_arr_1 = array.array( 'i' , [ 10 , 20 , 30 ]) |
Datentyp | Eine einzelne Liste kann Werte enthalten, die zu unterschiedlichen Datentypen gehören. meineListe = [ 40 , 'Hallo' , 'm' ] | Alle Elemente eines Arrays sollten denselben Datentyp haben. myArr = arr.array(i, [ 1 , 0 , 9]) |
Größe | Die Größe der Python-Liste kann geändert werden, da Python während der Listeninitialisierung einige zusätzliche Elemente initialisiert. | Arrays haben eine konstante Größe, die nicht geändert werden kann. |
Raum/ Erinnerung | Verbraucht mehr Platz und Speicher für das Hinzufügen oder Entfernen von Elementen. | Speichert Daten kompakter. |
Datenspeicher | Bevorzugt zum Speichern kleiner Datenmengen. | Bevorzugt zum Speichern großer Datenmengen |
Mathematische Operationen | Kann nicht direkt für mathematische Operationen verwendet werden. | Array-Elemente können einfach mit fortgeschrittenen mathematischen Operationen manipuliert werden. |
Anzeigedaten | Elemente einer Liste können ohne Schleife angezeigt werden meine_Liste = [ 1 , "Dennis" ,[ 'a' , 'b' ]] print(meine_Liste) | Damit die Elemente eines Arrays angezeigt werden, muss eine Schleife erforderlich sein. Array importieren my_Arr = array.array( 'i' , [ 1 , 2 , 3 ]) für i in my_Arr: drucken (ich) |
Python Array vs List : Wer ist der Gewinner?
Wenn Sie diesen Abschnitt lesen, bedeutet das, dass Sie jetzt mit dem Unterschied zwischen Liste und Array in Python vertraut sind. Sie sollten sich jedoch auch darüber im Klaren sein, wann Sie Array oder List in Ihrem Programm verwenden.
In diesem Abschnitt werden die verschiedenen Umstände erörtert, unter denen Sie die am besten geeignete Datenstruktur aus diesen beiden auswählen müssen.
Art der Elemente
Wenn der Datentyp nicht vorbestimmt ist, gibt es eine Sammlung von Daten, die zu mehreren Typen gehören. Um beispielsweise den Datensatz von Studenten mit Entitäten wie name(string) , ID(integer) und marks(float) zu speichern , ist eine Liste eine bevorzugte Wahl.
Gehören die zu speichernden Daten zum gleichen Datentyp, so kann hier ein Array oder eine Liste bevorzugt werden. Die Wahl hängt dann von anderen Parametern wie der Größe der Daten, den auszuführenden Operationen und der Nutzung ab.
Speicherverbrauch
Der Speicherverbrauch in Listen ist höher, da während der Initialisierung der Liste zusätzlicher Speicherplatz zugewiesen wird. Wenn die Datensammlung relativ klein ist, dann ist eine Liste hier eine effiziente Wahl.
Bildquelle: webcourses@UCF
Arrays eignen sich zum Speichern großer Datenmengen, da der Speicherverbrauch von Arrays effizienter ist als von Listen.
Bildquelle: webcourses@UCF
Unterstützte Operationen
Wenn Ihre Daten keine arithmetischen Operationen erfordern, kann eine Liste die bessere Wahl sein, da sie bessere integrierte Funktionen zur Datenmanipulation unterstützt.
Andererseits sollten Arrays verwendet werden, wenn mathematische Operationen durchgeführt werden müssen. Das NumPy-Modul unterstützt viele fortgeschrittene mathematische Operationen, darunter Trigonometrie und logarithmische Operationen.
Zu importierendes Modul
Eine Liste kann deklariert werden, ohne ein Modul oder eine Bibliothek zu importieren. Es kann wie eine gewöhnliche Variable definiert werden, da es sich um eine eingebaute Datenstruktur in Python handelt.
Das Array ist jedoch keiner der Standardcontainer von Python. Es gibt zwei beliebteste Module – array und NumPy . Jedes Modul verfügt über einige vordefinierte Funktionen zum Bearbeiten und Verwalten der im Array gespeicherten Daten.
Fazit
Dieser Artikel behandelte alle Themen, die erforderlich sind, um Ihnen ein aufschlussreiches Verständnis des Unterschieds zwischen Array und Liste in Python zu vermitteln. Wir haben auch die verschiedenen Anwendungsfälle besprochen, in denen eine Liste oder ein Array geeignet ist.
Wenn Sie Ihre Reise in Data Science beginnen möchten, dann melden Sie sich bei upGrad's Data Science an natürlich heute. Schauen Sie sich die umfangreiche Sammlung von Kursen auf upGrad an um Ihre Karriere anzukurbeln.
Das Python-Array wird in verschiedenen Szenarien einer Liste vorgezogen: Ein Array ist schneller als eine Liste in Python, da alle in einem Array gespeicherten Elemente homogen sind, dh sie haben denselben Datentyp, während eine Liste heterogene Elemente enthält. Die Python-Liste hat eine große Bedeutung bei der Datenspeicherung und kann in mehreren Fällen verwendet werden:Wann verwendet man ein Array über einer Liste in Python?
1. Da das Array in Python kompakter ist und weniger Speicher verbraucht als eine Liste, wird es bevorzugt, ein Array zu verwenden, wenn eine große Datenmenge gespeichert werden muss.
2. Es ist unnötig, eine Liste zum Speichern der Daten zu verwenden, wenn alle Elemente denselben Datentyp haben, und daher ist ein Array hier effizienter.
3. Die in einem Array gespeicherten Daten können leicht mathematisch manipuliert werden, während dies bei einer Liste ziemlich umständlich ist. Was ist schneller zwischen Array und Liste in Python?
Darüber hinaus sind Python-Arrays in C implementiert, was es viel schneller macht als Listen, die in Python selbst eingebaut sind. Wann eignet sich eine Liste besser zum Speichern von Daten in Python?
1. Wenn Sie verschiedene Elemente unterschiedlicher Datentypen haben, können Sie sie in einer Liste speichern und auf diese Elemente zugreifen, indem Sie einfach auf ihre Indizes verweisen.
2. Eine Liste kann auch in der Größe verändert werden. Daher ist eine Liste nützlich, wenn Sie sich über die Anzahl der Elemente nicht sicher sind.
3. Listen sind sehr vorzuziehen, wenn eine kleine Datenmenge gespeichert werden muss, da die eingebauten Funktionen der Liste sehr praktisch für die Datenmanipulation sind.