Lernen Sie die Datenstruktur der Python -Liste - Teil 1

Lernen Sie die Datenstruktur der Python -Liste - Teil 1

Datenstruktur ist eine Sammlung von Datentypen, die Beziehung zwischen ihnen und die Funktionen oder Vorgänge, die auf den Daten angewendet werden können. Datentyp kann sein Saite, Ganze Zahl, Schwimmender Wert usw.

Was ist der Unterschied zwischen veränderlichem/unveränderlichem Objekt?
Mutable Objekte
  1. Objekte, deren Zustand geändert werden kann, sobald er erstellt wird, wie das Hinzufügen, Aktualisieren oder Löschen von Elementen.
  2. Listen, Wörterbuch, Set, Bytearray sind veränderliche Objekttypen in Python.
Unveränderliche Objekte
  1. Objektzustand kann nicht geändert werden. Sobald das Objekt erstellt wurde, können wir Elemente nicht hinzufügen, entfernen oder aktualisieren.
  2. String, Ganzzahl, Tupel, Frezenset sind einige der unveränderlichen Objekttypen in Python.
Was ist der Unterschied zwischen homogener/heterogener Datenstruktur?
  1. Homogene Datenstruktur - Datenelemente haben den gleichen Datentyp (Beispiel: Array).
  2. Heterogene Datenstruktur - Datenelemente haben möglicherweise nicht der gleiche Datentyp (z. B. Liste, Tupel, Sets usw.).
Was sind primitive und nicht primitive Datentypen??
Primitive und nicht primitive Datentypen

Bevor Sie die Funktionalität der integrierten Datenstruktur verstehen, sehen wir einige integrierte Funktionen, die mit Datenstrukturobjekten verwendet werden.

  • Dir (obj) - Eine integrierte Funktion, die das Attribut und die Methoden zurückgibt.
  • Len (obj) - Geben Sie die Länge (die Anzahl der Elemente) eines Objekts zurück. Das Argument kann eine Sequenz (z. B. eine Zeichenfolge, Bytes, Tupel, Liste oder Bereich) oder eine Sammlung (wie ein Wörterbuch, ein Set oder ein gefrorener Satz) sein.
  • del - Dieses integrierte Schlüsselwort wird verwendet, um ein Objekt aus einem Namespace zu löschen oder Elemente aus einem Objekt wie einer Liste, einem Wörterbuch usw. zu entfernen
  • Typ (OBJ) - Die Funktion type () gibt entweder den Typ des Objekts zurück oder gibt ein neues Typ -Objekt basierend auf den bestandenen Argumenten zurück.
  • Ausweis() - Diese Funktion gibt die „Identität“ eines Objekts zurück. Dies ist eine Ganzzahl, die für dieses Objekt während seines Lebens garantiert einzigartig und konstant ist.

Lassen Sie uns, wie Sie nur wenige wichtige Details gesehen haben, mit Python -Datenstrukturen fortfahren.

Python Kommt mit integriert Datenstrukturen sowie Benutzer können ihre eigenen Datenstrukturen definieren. Die integrierte Datenstruktur umfasst AUFFÜHREN, WÖRTERBUCH, Tupel, Und SATZ. Einige der Beispiele für benutzerdefinierte Datenstrukturen sind STAPEL, Warteschlangen, BAUM, Hashmap, usw…

Menschen aus anderen Programmiersprachen werden mit einem Array -Typ sehr vertraut sein. Aber in Python sind sie nicht so häufig.

Hier ähnelt die Liste einem Array, aber die Liste ermöglicht es uns, Werte eines jeden Datentyps (heterogen) zu speichern, während Array nur Daten von bestimmten Typen enthält (int, float usw.). Um das Array zu verwenden, müssen Sie das Array aus dem Modul „Array“ ausdrücklich importieren.

In dieser Artikelreihe Python werden wir uns ansehen, was ein ist Datenstruktur Und Python-integrierte Datenstruktur.

Teil 1: Python -Datenstruktur - Liste Teil 2: Python -Datenstruktur - Tupel Teil 3: Python -Datenstruktur - Wörterbuch Teil 4: Python -Datenstruktur - Set/Frezenset

AUFFÜHREN

Aufführen ist eine Datenstruktur, die eine Sammlung verschiedener Datentypen ist. Was macht "Sammlung verschiedener Datentypen" bedeutet? Aufführen kann Strings, Ganzzahlen, schwimmende Punktwerte, verschachtelte Liste usw. speichern.

Aufführen Objekte sind “VeränderlichDies bedeutet, dass in der Liste erstellte Elemente zugegriffen, geändert oder gelöscht werden können. Support -Indexierung auflisten. Jedes Element in den Listen wird einer Adresse zugeordnet und diese Adresse kann verwendet werden, um auf den jeweiligen Elementwert zuzugreifen oder zu ändern.

  • Erstelle eine Liste
  • Liste einfügen/zugreifen/ändern/ändern
  • Liste löschen

ERSTELLE LISTE

Die Liste kann mit quadratischen Klammern erstellt werden.

>>> name_empty = [] # leere Liste >>> name = ['karthi', 'leo', 'matt', 'kane', 'scott', 'petter', '] # liste mit String -Datentyp >>> name_int = [1,2,3] # liste mit ganzzahliger Datentyp >>> name_mixed = [name_int, name, 1,2,3.14] # Liste mit verschachtelten Listenelementen. >>> name_mixed [[1, 2, 3], ['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'], 1, 2, 3.14] >>> name_int [1, 2, 3] 

Wir können eingebaute verwenden Typ() Funktion zum Überprüfen des Objekttyps.

>>> Typ (Name) 
Erstellen Sie die Liste in Python

Wir können auf die zugreifen Methoden Und Attribute des Liste Instanz verwendet Dir () Funktion.

>>> Dir (Name) ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__ -Format__', '__ge__', '__getatTribute__', '__getattriibut ', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append "," Clear "," Copy "," Count "," Extend "," Index "," einfügen "," Pop "," entfernen "," umgekehrt "," sortieren "] 

Wir können die Gesamtzahl der Elemente in der Liste verwenden len () Methode.

>>> len (Name) 

Wir können eine neue Liste aus einer vorhandenen Liste mithilfe verwenden Liste.Kopieren() Methode.

>>> name_new = Name.copy () >>> name_new ['karthi', 'leo', 'matt', 'Kane', 'Scott', 'Petter', 'Will'] 
Überprüfen Sie die Methoden und Attribute der Liste

Einfügen / Zugriff auf / ändern Sie Liste

Wir können ein Element an einer beliebigen Position in eine Liste einfügen Liste.einfügen (i, x) Methode.

>>> name = ['Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>> Name ['Leo', 'Matt', 'Kane', 'Scott' , 'Petter', 'Will'] >>> Name.Einfügen (0, 'Tom') # Insert -Methode nimmt 2 Argumente (Indexposition, Element) >>> Name ['Tom', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', ' Will '] # Tom wird an der 0. Position eingefügt. 
Elemente in die Liste einfügen

Wir können benutzen Liste.anhängen (x) Methode zum Anhängen eines einzelnen Elements in die Liste. Dadurch wird das Element am Ende der Liste eingefügt.

>>> name = [] >>> len (name) 0 >>> Name.append ('leo') >>> Name.append ('Matt') >>> Name.append ('kane') >>> print (name) ['leo', 'matt', 'kane'] 
Element in der Liste anhängen

Wir können benutzen Liste.erweitern() Methode zum Hinzufügen mehrerer Elemente zur Liste.

>>> new_name = ['gowtham', 'martin', 'luis'] >>>> name.Extend (new_name) >>> name ['Will', 'Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin', '', '' ',' '' ',' '' ',' ',' '', '', '', '', '', '', '' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',', Luis '] 
Fügen Sie mehrere Elemente zur Auflistung hinzu

Wir können auch verwenden '+' ' Betreiber, um zwei Liste zu kombinieren. Beide Liste können unterschiedliche Datentypen haben.

>>> a = [1,2,3] >>> b = [2,3,3] >>> c = a + b >>> c [1, 2, 3, 2, 3, 3]> >> d = ['karthi', 'kenny'] >>> e = a + d >>> e [1, 2, 3, 'karthi', 'kenny'] 
Kombinieren Sie zwei Liste in Python

Wie bereits angegeben, sind die Objekte veränderlich. Ein Listenelement kann durch Verweisen auf die Indexposition und das Zuweisen von Wert zu ihm geändert werden.

>>> Name # vor modifiziert ['tom', 'leo', 'matt', 'kane', 'Scott', 'Petter', 'Will'] >>>> Name [0] = 'Karthi' >>> Name # nach modifiziert ['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] 
Das Listenelement nach Indexposition ändern

Der Liste unterstützt sowohl eine positive als auch negative Indexierung.

Die Indexierung beginnt von 0 und negative Indexierung beginnt von -1.

Python -Indexierung

Wir können mit ihrer Indexposition auf das Listenelement zugreifen.

>>> Name [0] # Zugriff auf das Listenelement unter Index 0 'Leo' >>> Name [1] 'Matt' >>> Name [4] 'Petter' >>> Name [5] 'Will' >> > Name [-1] # Zugriff auf das Listenelement mit negativer Indexierung 'Will' >>> name [-6] 'Leo' ' 
Zugriffslistenelement mithilfe der Indexposition

Wir können auch Slicing verwenden, um auf die Elemente in der Liste zuzugreifen. Durch das Schneiden können wir auf eine Reihe von Elementen zugreifen, indem wir die Start-, End-, Schrittparameter definieren.

# Syntax: List [Startposition, Endposition, Schritt] >>> Name [0: 3] ['Tom', 'Leo', 'Matt'] >>> Name [:] ['Tom', 'Leo' ' , 'Matt', 'Kane', 'Scott', 'Blut [: -2] ['Tom', 'Leo', 'Matt', 'Kane', 'Scott'] >>> Name [:-1] ['Tom', 'Leo', 'Matt', 'Kane ',' Scott ',' Petter '] >>> Name [: 1: 2] [' Tom ',' Matt ',' Scott '] 
Zugangsbereich der Elemente in der Liste

Wir können die Anzahl der Auftreten für einen bestimmten Wert verwenden Liste.zählen (x) Methode.

>>> name_int = [1,1,2,3,1] >>> name_int.Graf (1) 3 
Wert auftreten

Wir können die Indexposition eines bestimmten Elements verwenden Liste.Index (x [, Start [, Ende]]) Methode.

>>> Name # eingefügt 'Will' am Ende der Liste. Jetzt haben wir einen 2 Namen 'Will'. ['Will', 'Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will'] >>> >>>>>.Index ('Will) # gibt die Indexposition des ersten Auftretens von x zurück. 0 >>> Name.Index ('Will', 2) # Startindexpositon'2 'wird angegeben. 7 >>> Name.Index ('Will', 2,4) # Die Start- und Endindexposition wird angegeben. Da innerhalb der angegebenen Suchposition kein Auftreten von "Testament" vorliegt, wird der Wertfehler geworfen. TraceBack (letzte Anruf Last): Datei "", Zeile 1, in ValueError: "Will" ist nicht in der Liste 

Wir können benutzen Liste.umkehren() Methode, um die Elemente in der Liste umzukehren.

>>> Name ['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>>>>.Reverse () >>> Name ['Will', 'Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi'] 
Umkehrende Elemente in der Liste umgekehrt

Liste löschen

Wir können benutzen Liste.Pop (x) Methode zum Entfernen eines Elements aus einer Liste bei X Position. Diese Funktion entfernen das Element aus der Liste und zeigt das entfernte Element an. Wenn X wird dann nicht angegeben Pop() Die Methode gibt den letzten Element aus der Liste zurück.

>>> name ['Will', 'Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin', 'Luis']> >> Name.Pop (0) 'Will' >>> name ['Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin', 'Luis '] >>> Name.pop () 'luis' ' 

Wir können auch verwenden Liste.entfernen (x) Methode zum Entfernen des Elements aus der Liste. Hier X nimmt den Wert des Elements und wirft eine ValueError Wenn X ist nicht in der Liste.

>>> name = ['Leo', 'Matt', 'Kane', 'Scott', 'Blut.REMET ('LEO') >>> name ['Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>>> Name.Entfernen Sie ('Leo') Traceback (neuester Anruf letztes): Datei "", Zeile 1, in ValueError: List.entfernen (x): x nicht in der Liste 

Wir können eine Liste leer erstellen, indem wir quadratische Klammern entweder zuweisen oder verwenden Liste.klar() Methode.

>>> name1 = name.COPY () >>> name1 ['Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin'] >>> Name [' Petter ',' Scott ',' Kane ',' Matt ',' Leo ',' Karthi ',' Will ',' Gowtham ',' Martin '] >>> name = [] >>> Name [] >> > Name1.Clear () >>> name1 [] 

Anstatt Listenmethoden zu verwenden, um die Liste leer zu gestalten oder ein Element aus der Liste zu entfernen del um diese Aktionen auszuführen. Der "Del" Das Schlüsselwort kann ein Listenobjekt aus dem Speicher löschen oder ein Element aus einer Liste löschen oder ein Element aus einer Scheibe löschen.

>>> name = ['leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>> del Name [0] >>> Name ['Matt', 'Kane' , 'Scott', 'Petter', 'Will'] >>> del name [-3:] >>> name ['matt', 'kane'] >>> del name [:] >>> name [] 

Eingebaut Ausweis() Funktion geben die “zurück“Identität”Eines Objekts. Dies ist eine Ganzzahl, die für dieses Objekt im Laufe seines Lebens garantiert einzigartig und konstant ist.

>>> id (Name) 139979929658824 >>> del Name >>> id (Name) TraceBack (letztes Anruf letzt 

Notiz: Wir haben die Listenvariable mithilfe des Speichers entfernt del (), Daher wirft es den Namensfehler aus.

Help () Funktion: 

Hilfe eingebaut Funktion() ist sehr nützlich, um Details zu einem bestimmten Objekt oder einer bestimmten Methoden dieses Objekts zu erhalten.

Hilfe (Objekt) Hilfe (Objekt.Methode) 
Zusammenfassung

Bisher haben wir in diesem Artikel gesehen, wie wir a verwenden können Datenstruktur auflisten So verwenden Sie die Listenmethoden, um die Listenobjekte zu speichern, zuzugreifen, zu ändern, zu löschen, Listenobjekte zu speichern. Wir haben auch einige integrierte Funktionen gesehen wie Ausweis(), Dir (), Typ(), Hilfe() die sind sehr effektive Funktionen. Wir haben auch ein Listenverständnis in Python, das eine prägnantere und lesbare Art zum Erstellen einer Liste bietet.