Python-Array vs. Liste: Unterschiede & Anwendungsfälle

Veröffentlicht: 2021-11-03

Python 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.

Wann verwendet man ein Array über einer Liste in Python?

Das Python-Array wird in verschiedenen Szenarien einer Liste vorgezogen:

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?

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.

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?

Die Python-Liste hat eine große Bedeutung bei der Datenspeicherung und kann in mehreren Fällen verwendet werden:

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.