python list create
In diesem Python-Listen-Tutorial werden Möglichkeiten zum Erstellen, Zugreifen, Schneiden, Hinzufügen / Löschen von Elementen zu Python-Listen untersucht, die wohl einer der nützlichsten Datentypen sind:
Python enthält 4 Sammlungsdatentypen, wie unten erwähnt:
- Liste
- einstellen
- Wörterbuch
- Tupel
In diesem Tutorial werden wir detailliert auf List und seine verschiedenen Operationen eingehen. In Python ist list eine Datenstruktur oder es ist wie ein Array, in dem mehrere Daten gleichzeitig gespeichert werden.
=> Entdecken Sie hier die Python-Trainingsreihe
Wenn Sie Erfahrung in anderen Programmiersprachen wie Java, C, C ++ usw. haben, sind Sie mit dem Konzept von Arrays vertraut. Liste ist fast das gleiche wie Arrays.
Was du lernen wirst:
- Was sind Python-Listen?
- Weitere Informationen zu Listen in Python
- Fazit
Was sind Python-Listen?
In Python ist eine Liste a Datentyp , das eine Sammlung verschiedener Objekte (Elemente) in einer eckigen Klammer (()) speichert. Jedes Element in einer Liste wird durch ein Komma (,) getrennt, wobei das erste Element am Index 0 steht.
Hinweis ::In Zukunft werden alle Beispiele in diesem Lernprogramm direkt von einer Python-Shell ausgeführt, sofern nicht anders angegeben.
Unten finden Sie ein Beispiel für eine Liste mit 5 Elementen.
>>> l = ('what','who','where','when','how') >>>l ('what','who','where','when','how')
Im obigen Beispiel können wir sehen, dass die Liste hat String-Objekte als Elemente, und jedes Element wird durch ein Komma getrennt.
Eigenschaften der Python-Liste
Bevor wir uns ansehen, wie wir Elemente in einer Liste bearbeiten können, wollen wir uns einige der Merkmale ansehen, die Python-Listen bevorzugen.
Python-Listen sind Containersequenzen
Im Gegensatz zu flachen Sequenzen ( Zeichenfolge , array.array , Speicheransicht usw.), die nur Elemente eines Typs enthalten können, ist eine Liste a Containersequenz das kann Gegenstände eines Typs sowie verschiedener Typen enthalten.
Beispiel mit Artikeln eines Typs
Öffnen wir unsere Python-Shell und definieren eine Liste mit Zahlen.
>>> numbers = ('one','two','three','four','five') >>> numbers ('one','two','three','four','five')
Das obige Beispiel zeigt eine Liste von Elementen desselben Typs, in diesem Fall des Typs string (str) .
Beispiel mit Gegenständen verschiedener Typen
Öffnen wir unsere Python-Shell und definieren eine andere Version einer Zahlenliste.
>>> numbers = ('one',2,3,'four',5.0) >>> numbers ('one',2,3,'four',5.0)
Das obige Beispiel zeigt eine Liste von Elementen verschiedener Typen. Die Typen sind Zeichenfolge , ganze Zahl, und schweben .
// a sketch showing the list of items and their types as annotation
Die Python-Liste kann auch alle Objekte enthalten, wie z Funktionen , Klassen , Module , Listen , Tupel, und vieles mehr.
Öffnen Sie einen Editor und fügen Sie den folgenden Code ein:
def test(): '''This is a function''' print('This is a test') if __name__ == '__main__': print(test) # return instance object of function 'test' instance = type(test) print(instance) # create a list of colors colors = ('red','blue','green') print(colors) # create a list holding all the various data types defined above, including boolean. my_list = (test, instance, colors, False) print(my_list)
Ausgabe
Python-Listen sind geordnete Sequenzen
Eine Python-Liste ist eine geordnete Sammlung von Objekten. Die Position jedes Elements in einer Liste ist sehr wichtig. Tatsächlich sind zwei Listen mit denselben Elementen nicht identisch, wenn die Reihenfolge, in der die Elemente positioniert sind, nicht identisch ist.
>>> ('a','b','c','d') == ('a','c','b','d') False
Diese Eigenschaft der Python-Liste ermöglicht den Zugriff auf ihre Elemente durch Index und Slicing (dazu später mehr).
Python-Listen sind veränderbare Sequenzen
Python-Listen sind veränderbar. Aber was ist ein veränderliches Objekt? Es ist einfach ein Objekt, das nach seiner Erstellung geändert werden kann. Beispiele von anderen veränderlichen Sequenzen sind Wörterbuch , array.array , collection.deque .
Warum veränderlich? Sequenzen wie Listen werden für komplexe Operationen verwendet, daher ist es sinnvoll, dass sie dazu in der Lage sein sollten Veränderung , wachsen , schrumpfen , Update usw. . Dies ist nur mit Veränderlichkeit möglich. Durch die Veränderbarkeit können wir auch vorhandene Listen ändern (mehr dazu).
Lassen Sie uns die Veränderbarkeit einer Liste anhand des folgenden Beispiels überprüfen.
Öffnen Sie einfach einen Editor und fügen Sie den Code ein:
def veryfiy_mutability(): # create a list l = (9,0,4,3,5) print('Display before modifying') print('List: {}
Id: {}'.format(l,id(l))) # modify the list by replacing the item at # index 3 to the item -2. l(3) = -2 print('Display after modifying') print('List: {}
Id: {}'.format(l,id(l))) if __name__ == '__main__': veryfiy_mutability()
Ausgabe
Aus der obigen Ausgabe geht hervor, dass die Liste vor und nach der Änderung unterschiedlich ist. Die Ich würde Wert ist der gleiche. Das Ich würde Der Wert hier stellt die Adresse des Objekts im Speicher dar - die mit Python erhalten wird Ich würde() .
Dies sagt uns, dass der Listeninhalt zwar geändert wurde, aber immer noch dasselbe Objekt ist. Damit entspricht dies unserer Definition: „ Es ist einfach ein Objekt, das nach seiner Erstellung geändert werden kann ''
Hinweis ::Im obigen Beispiel haben wir die Indizierung (mehr dazu) verwendet, um die Liste zu ändern.
Python-Listen bearbeiten
Bei Python-Listen ist der Himmel unser Limit. Es gibt unzählige Dinge, die wir mit Listen wie tun können Hinzufügen , Löschen , Indizierung , Schneiden , Überprüfung auf Mitgliedschaft , und vieles mehr. Außerdem verfügt Python über integrierte Funktionen, mit denen die Bearbeitung von Listen spannender wird.
In diesem Abschnitt werden einige häufig verwendete Listenoperationen vorgestellt.
Eine Liste erstellen
Um eine Liste zu erstellen, setzen Sie einfach eine Reihe von Elementen oder Ausdrücken in eine eckige Klammer, die durch Kommas getrennt ist.
(expression1, expression2,...,expresionN)
>>> l = (4,3,5,9+3,False) >>> l (4, 3, 5, 12, False)
Außerdem verfügt Python über ein integriertes Objekt namens Liste (), mit denen Listen erstellt werden können.
list( sequence )
>>> l = list() # create an empty list >>> l ()
Python Liste () kann Sequenztypen aufnehmen und in Listen konvertieren. Dies ist die typische Methode zum Konvertieren eines Tupels in eine Liste.
>>> t = (4,3,5) # tuple >>>l = list(t) # convert into list (4,3,5)
Im obigen Beispiel haben wir den Datentyp verwendet Tupel . Es ähnelt einer Liste, ist jedoch im Gegensatz zu Listen unveränderlich und seine Elemente sind in Klammern eingeschlossen.
Ein anderes Mittel, mit dem wir eine Liste erstellen können, ist die Verwendung von Listenverständnisse das hat die folgende Syntax.
(expression for item in sequence)
>>> (i**2 for i in range(4)) (0, 1, 4, 9)
Es ist erwähnenswert, dass Python-Listen als Referenz übergeben werden. Das heißt, das Zuweisen einer Liste liefert deren Speicherortidentität. Der Fehler, den viele Neulinge machen, besteht darin, Listen auf diese Weise zu erstellen.
>>> l1 = l2 = (4,3) # wrong way to create separate list objects >>> l1 (4,3) >>> l2 (4,3)
Hier könnten wir denken, dass wir zwei verschiedene Listen erstellt haben, aber wirklich haben wir nur eine erstellt. Lassen Sie uns dies demonstrieren, indem Sie eine der Variablen ändern.
>>> l1(0) = 0 >>> l1 (0,3) >>> l2 (0,3)
Wir stellen fest, dass das Ändern einer Variablen die andere ändert. Dies liegt daran, dass beide Variablen l1 und l2 dieselbe Speicherortidentität haben, sodass beide auf dasselbe Objekt verweisen.
Hinzufügen von Elementen zu einer Liste
Python bietet viele Möglichkeiten, Elemente zu seiner Liste hinzuzufügen. Der gebräuchlichste Weg ist die Verwendung von append () Methode. Die anderen Möglichkeiten sind die Verwendung von erweitern() Methode. Indizierung und Schneiden (dazu später mehr) werden eher verwendet, um Elemente in einer Liste zu ersetzen.
# 1) Verwenden der append () -Methode
Diese Methode nimmt ein einzelnes Element auf und fügt es am Ende der Liste hinzu. Es wird keine neue Liste zurückgegeben, sondern nur die vorhandene Liste geändert (dank ihrer Veränderbarkeit).
>>>l = list() # create empty list >>> l () >>> l.append(4) # add an integer >>> l (4) >>> l.append((0,1)) # add a list >>> l (4, (0, 1)) >>> l.append(4 >> l (4, (0, 1), True) >>> l.append(x for x in range(3)) # add result of a tuple comprehension >>> l (4, (0, 1), True, )
Einige Dinge aus dem obigen Beispiel zu beachten:
- Elemente hier können Ausdrücke, Datentypen, Sequenzen und vieles mehr sein.
- Das append () Methode hat eine zeitliche Komplexität von (0) 1. Das heißt, es ist konstant.
# 2) Verwenden der Extend () -Methode
Diese Methode verwendet eine iterable als Argument und fügt alle Elemente daraus am Ende der Liste hinzu. Diese Methode wird meistens verwendet, wenn wir einzelne Elemente einer Sequenz zu einer Liste hinzufügen möchten
Grundsätzlich ist die erweitern() Die Methode durchläuft das Argument und hängt jedes Element an die Liste an. Genau wie bei der append () -Methode wird keine neue Liste zurückgegeben, sondern die vorhandene Liste geändert.
>>> l1 = (3,2,5) # create a list of items >>> l1 (3, 2, 5) >>> l2 = (0,0,-1) # create a second list of items >>> l2 (0, 0, -1) >>> str = 'hello' # create a string(iterable) >>> str 'hello' >>> l1.extend(l2) # append all items from l2 to l1 >>> l1 (3, 2, 5, 0, 0, -1) >>> l1.extend(str) # append all items from str to l1 >>> l1 (3, 2, 5, 0, 0, -1, 'h', 'e', 'l', 'l', 'o')
Einige Dinge aus dem obigen Beispiel zu beachten:
- Ein String ist iterierbar, also unser erweitern() Methode wird über seine Zeichen iterieren.
- Das erweitern() Methode hat eine zeitliche Komplexität von (0) K wobei K die Länge seines Arguments ist.
Zugreifen auf Elemente aus einer Liste
Indizierung und Schneiden sind die gebräuchlichsten Mittel, um auf Listen zuzugreifen. Wir können auch auf Elemente in einer Liste mit Schleifen wie der zugreifen für Schleife .
# 1) Indizierung
Eine Python-Liste verwendet die nullbasierte Nummerierung System. Das heißt, alle Elemente werden durch eine Indexnummer von 0 bis n-1 eindeutig identifiziert, wobei n die Länge der Liste ist.
Betrachten Sie die folgende Liste:
>>> colors = ('red','blue','green','yellow','black') # create list >>> colors ('red','blue','green','yellow','black') >>> len(colors) # get list length 5
Die folgende Tabelle zeigt ihre jeweiligen Indizes in der Nullbasierte Nummerierung einer Liste.
Artikel | Netz | Blau | Grün | Gelb | schwarz |
---|---|---|---|---|---|
pop () | Löschen / Entfernen des Elements vom letzten in einer Liste. | ||||
Index | 0 | 1 | zwei | 3 | 4 |
Aus der obigen Tabelle geht hervor, dass sich das erste Element ('rot') an der Indexposition 0 und das letzte Element ('schwarz') an der Indexposition 4 (n-1) befindet, wobei n = 5 (Länge des Objekts) ist Farben).
Wie wir im obigen Abschnitt über Merkmale gesehen haben, sind Python-Listen geordnete Sequenzen. Dies ermöglicht es uns, die Indizierung zu verwenden, um einfach auf das Element zuzugreifen und es zu bearbeiten.
Verwenden Sie die Indizierung, um auf Elemente an bestimmten Indizes des oben erstellten Farbobjekts zuzugreifen.
>>> colors # original list ('red','blue','green','yellow','black') >>> colors(0) # access item at index 0 'red' >>> colors(4) # access item at index 4 'black' >>> colors(9) # access item at index 9 Traceback (most recent call last): File '', line 1, in IndexError: list index out of range
Hinweis ::Die letzte obige Anweisung versucht, von einem Listenobjekt der Länge 5 auf ein Element an Indexposition 9 zuzugreifen. Wenn Sie in der Python-Liste auf ein Element an einem nicht vorhandenen Index zugreifen, wird die IndexError Ausnahme.
Ein wichtiges Konzept der Indizierung besteht darin, dass wir eine negative Indizierung verwenden können, d. H. Wir können umgekehrt auf Elemente einer Liste zugreifen, beginnend bei -1 für das letzte Element und endend bei -n für das letzte Element, wobei n die Länge des Listenobjekts ist.
Wenn wir in der obigen Tabelle eine negative Indizierung verwenden, sieht diese wie folgt aus:
Artikel | Netz | Blau | Grün | Gelb | schwarz |
---|---|---|---|---|---|
Index | -5 | -4 | -3 | -2 | -1 |
Verwenden Sie die negative Indizierung, um auf einige Elemente des oben erstellten Farbobjekts zuzugreifen.
>>> colors # original list ('red','blue','green','yellow','black') >>> colors(-1) # access item and index -1(first item counting backward) 'black' >>> colors(-3) # access item at index -3(third item counting backward) 'green' >>> colors(-5) # access item at index -5 (last item counting backward) 'red'
# 2) Schneiden
Im Gegensatz zur Indizierung, bei der nur ein Element zurückgegeben wird, Schneiden Auf der anderen Seite kann eine Reihe von Artikeln zurückgegeben werden.
Es hat die folgende Syntax:
L(n:m)
Wenn n die Indexnummer ist, an der das Slice beginnt (standardmäßig 0), und m die exklusive Indexnummer ist, an der das Slice endet (standardmäßig Länge-1). Sie sind durch einen Doppelpunkt (:) getrennt
Betrachten Sie das folgende Beispiel, in dem mithilfe von Slicing auf Elemente an bestimmten Indizes des oben erstellten Farbobjekts zugegriffen wird.
>>> colors # original list ('red','blue','green','yellow','black') >>> colors(0:2) # get first two items ('red', 'blue') >>> colors(1:4) # get items at index 1,2 and 3 ('blue', 'green', 'yellow') >>> colors(2:len(colors) # get items from index 2 to the last item ('green', 'yellow', 'black') >>> colors(3:4) # get one item at index 3. Same as colors(3) ('yellow') >>>
In der Syntax L (n: m) ist n standardmäßig 0 und m standardmäßig die Länge der Liste. Also, in Beispiele 1 und 3 oben könnten wir n und m als Farben (: 2) bzw. Farben (2:) weglassen. Oder (:), das in diesem Fall eine flache Kopie des gesamten Listenobjekts zurückgibt.
Wir können auch negative Indexzahlen verwenden, während wir Listen aufteilen. Dies wird normalerweise verwendet, wenn wir umgekehrt auf die Liste zugreifen möchten.
>>> colors # original list ('red','blue','green','yellow','black') >>> colors(-3:-2) ('green') >>> colors(-2:) ('yellow', 'black')
Es gibt auch einen dritten Parameter, den Slicing unterstützt Schritt (s). Es definiert, wie viele Elemente vorwärts verschoben werden sollen, nachdem das erste Element aus der Liste abgerufen wurde. Der Standardwert ist 1.
L(n:m:s)
Verwenden Sie die oben definierte Farbliste und verwenden Sie den dritten Parameter des Slice, um zwei Schritte zu verschieben.
>>> colors # original list ('red','blue','green','yellow','black') >>> colors(0:3:2) ('red', 'green')
# 3) Verwenden von Schleifen
Schleifen werden meistens verwendet, um auf Elemente in einer Liste zuzugreifen, um die Elemente zu bearbeiten. Wenn wir also die Elemente einer Liste bearbeiten möchten, können wir die verwenden für Schleife um auf die Gegenstände zuzugreifen und sie zur Bearbeitung weiterzugeben.
Angenommen, wir möchten die Anzahl der Buchstaben für jeden Artikel zählen. Wir können die verwenden für Schleife um das zu erreichen.
Öffnen Sie einen Editor und fügen Sie den folgenden Code ein:
def count_letters(l): count = {} # define a dict to hold our count for i in l: # loop through the list count(i) = len(i) # for each item, compute its length and store it in the dict return count # return the count if __name__ == '__main__': colors = ('red', 'blue', 'green', 'yellow', 'black') print(count_letters(colors))
Ausgabe
Um diesen Abschnitt zu beenden, schauen wir uns zwei coole Sachen an, die mit dem Schneiden gemacht werden können.
-
Erstellen Sie eine flache Kopie einer Liste
Das ist die grundlegende Art, das zu benutzen Kopieren() Methode des Listenobjekts oder der eingebauten Funktion copy.copy . Dies kann jedoch durch Schneiden erreicht werden.
>>> colors # original list ('red','blue','green','yellow','black') >>> colors_copy = colors(:) # make a shallow copy >>> colors_copy ('red', 'blue', 'green', 'yellow', 'black') >>> colors_copy(0) = 0 # modify item at index 0 by changing its value to 0 >>> colors_copy # the copied version now has 0 at index 0 (0, 'blue', 'green', 'yellow', 'black') >>> colors # the original version is unchanged ('red', 'blue', 'green', 'yellow', 'black') >>>
-
Liste umkehren
Der grundlegende Weg ist die Verwendung der umkehren Methode des Listenobjekts oder der eingebauten Funktion rückgängig gemacht() . Dies kann jedoch durch Schneiden erreicht werden.
>>> colors # original list object ('red', 'blue', 'green', 'yellow', 'black') >>> colors(::-1) # returns a reversed shallow copy of the the original list ('black', 'yellow', 'green', 'blue', 'red') >>>
Elemente aus einer Liste entfernen
Da wir einer Liste so viele Elemente hinzufügen können, können sie auch aus einer Liste entfernt werden. Die drei Möglichkeiten, wie Elemente entfernt werden können, sind:
# 1) Verwenden der del-Anweisung
Es hat die folgende Syntax:
del target_list
Die Zielliste ( Zielliste ) kann die gesamte Liste sein (falls Sie die Liste löschen möchten) oder ein Element oder Elemente in einer Liste (in diesem Fall verwenden Sie die Indizierung oder das Schneiden).
Betrachten Sie das folgende Beispiel .
Angenommen, wir möchten einige Elemente aus der oben erstellten Farbliste löschen.
>>> colors # original list ('red', 'blue', 'green', 'yellow', 'black') >>> c_copy = colors(:) # make a shallow copy to work on >>> del c_copy(0) # delete item at index 0 >>> c_copy ('blue', 'green', 'yellow', 'black') >>> del c_copy(0:2) # delete items at index 0 and 1(slicing) >>> c_copy ('yellow', 'black') >>> del c_copy(:) # delete all items in a list. Same as ‘c_copy.clear()’ () >>> del c_copy # delete the list object >>> c_copy # access object that doesn't exist Traceback (most recent call last): File '', line 1, in NameError: name 'c_copy' is not defined >>>
Hinweis ::Die del-Anweisung wird gelöscht an Ort und Stelle, d.h. wird das ursprüngliche Listenobjekt geändert, anstatt ein neues Listenobjekt zurückzugeben.
# 2) Verwenden der list.remove (x)
Es entfernt das erste Element aus der Liste, dessen Wert gleich ist x . Es wird ein ValueError ausgelöst, wenn kein solches Element vorhanden ist.
Diese Methode wird hauptsächlich verwendet, um Elemente nach Namen aus einer Liste zu entfernen, im Gegensatz zu der del-Anweisung, die Indizierung und Slicing verwendet.
>>> colors # original list ('red', 'blue', 'green', 'yellow', 'black') >>> c_copy = colors(:) # create shallow copy to work on >>> c_copy ('red', 'blue', 'green', 'yellow', 'black') >>> c_copy.remove('blue') # remove first item with name 'blue' >>> c_copy ('red', 'green', 'yellow', 'black') >>> c_copy.remove('blue') # try to remove item that doesn't exist Traceback (most recent call last): File '', line 1, in ValueError: list.remove(x): x not in list >>>
Hinweis ::Das Listenobjekt entfernen() Methode löscht an Ort und Stelle, d.h. wird das ursprüngliche Listenobjekt geändert, anstatt ein neues Listenobjekt zurückzugeben.
# 3) Verwenden von list.pop ((i))
Das Element wird entfernt und an der angegebenen Position in einem Listenobjekt zurückgegeben. Wenn kein i (Index) angegeben ist, wird das letzte Element in der Liste entfernt und zurückgegeben.
Hinweis ::Die eckige Klammer um i oben bedeutet keine Liste von i, sondern bedeutet, dass i optional ist.
>>> colors # original list ('red', 'blue', 'green', 'yellow', 'black') >>> c_copy = colors(:) # make a shallow copy to work on >>> c_copy ('red', 'blue', 'green', 'yellow', 'black') >>> c_copy.pop(3) # pop out the item at index 3 'yellow' >>> c_copy ('red', 'blue', 'green', 'black') >>> c_copy.pop() # pop out the last item in the list 'black' >>> c_copy ('red', 'blue', 'green') >>>
Hinweis: Die Liste. Pop ((i)) Methode löscht an Ort und Stelle, d.h. wird das ursprüngliche Listenobjekt geändert, anstatt ein neues Listenobjekt zurückzugeben. Außerdem wird das aus der Liste entfernte Element zurückgegeben
Ersetzen von Elementen aus einer Liste
Das Ersetzen von Elementen ist ziemlich einfach. In einem der obigen Abschnitte haben wir das Indizieren und Schneiden gesehen. Diese können verwendet werden, um auf Elemente zuzugreifen und diese aus einer Liste zu entfernen.
# 1) Durch Indizierung ersetzen
L(index) = value
>>> colors # original list ('red', 'blue', 'green', 'yellow', 'black') >>> c_copy = colors(:) # make a shallow copy to work on >>> c_copy ('red', 'blue', 'green', 'yellow', 'black') >>> c_copy(0) = 'brown' # replace item at index 0 with 'brown' >>> c_copy ('brown', 'blue', 'green', 'yellow', 'black') >>>
# 2) Ersetzen durch Schneiden
L(n:m) = value
Hinweis :: Wert sollte ein sein wiederholbar oder sonst die TypeError Ausnahme wird ausgelöst.
>>> colors # original list ('red', 'blue', 'green', 'yellow', 'black') >>> c_copy = colors(:) # make a shallow copy to work on >>> c_copy(0:2) = ('brown') # replace items at index 0 and 1 with 'brown' >>> c_copy ('brown', 'green', 'yellow', 'black') >>> c_copy(1:3) = ('white','purple') # replace items at index 1 and 2 with 'white' and 'purple' >>> c_copy ('brown', 'white', 'purple', 'black') >>> c_copy(1:4) = ('white','purple') # replace items at index 1,2 and 3 with 'white' and 'purple'. Here we replace 3 items with 2 items >>> c_copy ('brown', 'white', 'purple') >>>
Häufig gestellte Fragen
F # 1) Was ist eine Liste von Listen in Python?
Antworten: Eine Liste von Listen in Python ist eine Liste, die Listen als Element enthält.
Zum Beispiel
(('a','b'),('c','d'))
Es kann auch als bezeichnet werden verschachtelte Liste .
F # 2) Wie deklarieren Sie eine Liste in Python?
Antworten: In Python kann eine Liste auf zwei Arten deklariert werden. Entweder mit der eingebauten Funktion Liste() oder mit der Klammer-Notation (). Liste() nimmt eine iterable und () nimmt Elemente eines beliebigen Typs auf, die durch ein Komma getrennt sind.
(pytyon)>>> list('hello') # a string is iterable ('h', 'e', 'l', 'l', 'o') >>> (3,4,5,23) # numbers are separated by comma (3, 4, 5, 23) >>> (/python)
F # 3) Können Sie eine Liste in eine Liste Python einfügen?
Antworten: Ja, wir können eine Liste in eine Liste einfügen. Tatsächlich ist eine Liste eine Containersequenz, die Elemente eines beliebigen Datentyps aufnimmt.
F # 4) Was macht list () in Python?
Antwort: Liste ( ) ist eine in Python integrierte Funktion, die ein Listenobjekt erstellt. Es nimmt ein iterables als Argument auf.
>>> list((3,2,4)) # The iterable object here is a tuple. (3, 2, 4) >>>
F # 5) Kann eine Python-Liste verschiedene Typen enthalten?
Antworten: Eine Liste ist eine Containersequenz, die Elemente eines beliebigen Datentyps aufnimmt ( Liste , Tupel , ganze Zahl , schweben , Saiten , usw)
Weitere Informationen zu Listen in Python
Was ist Datenstruktur?
Computer werden verwendet, um eine große Anzahl von Daten zu speichern oder eine große Anzahl von Daten mit hoher Geschwindigkeit und Genauigkeit zu verarbeiten. Daher ist es am besten, Daten für einen schnellen Zugriff dauerhaft zu speichern.
Während der Datenverarbeitung sollte dies innerhalb kürzester Zeit geschehen, ohne an Genauigkeit zu verlieren. Wir verwenden die Datenstruktur, um Daten auf organisierte Weise zu verarbeiten und Daten zur Verarbeitung im Speicher zu speichern.
Da Python eine übergeordnete und interpretierte Programmiersprache ist, ist es sehr wichtig, die Datenstruktur in Python zu verwenden.
Was ist Liste?
Eine Liste ist eine Datenstruktur, in der mehrere Daten gleichzeitig gespeichert werden.
Die in einer Liste gespeicherten Daten sind homogen und damit die leistungsstärkste Funktion der Liste in Python. Wir können mehrere Daten verschiedener Datentypen wie String, Integer und Objekte in einer einzigen Liste speichern.
Listen sind in Python veränderbar, sodass Daten auch nach der Erstellung jederzeit geändert werden können. Listen sind sehr leistungsfähig für die Implementierung von Stapeln und Warteschlangen in Python.
Wie bereits erwähnt, speichert die Liste Daten in einer geordneten Reihenfolge, und auf in einer Liste gespeicherte Daten wird über ihren Index zugegriffen, und für die Liste beginnt der Index immer bei Null. Jedes Element hat eine bestimmte Stelle in der Liste, und auf alle diese Daten wird mithilfe eines Index zugegriffen.
In der Liste können wir denselben Wert mehrmals speichern, und alle Daten werden als separates und eindeutiges Element betrachtet. Listen sind am besten geeignet, um Daten zu speichern und zu einem späteren Zeitpunkt zu durchlaufen.
Liste erstellen
Daten in einer Liste werden durch Kommas getrennt und in eckigen Klammern (()) eingeschlossen. Die Elemente in der Liste müssen nicht vom gleichen Typ sein.
Syntax: List = (item1, item2, item3)
Beispiel 1:
List = ( )
Beispiel 2:
List = (2, 5, 6.7)
Beispiel 3:
List = (2, 5, 6.7, ‘Hi’)
Beispiel 4:
List = (‘Hi’, ‘Python’, ‘Hello’)
In den obigen Beispielen können wir beobachten, dass wir Elemente verschiedener Datentypen mit durch Kommas getrennten Daten gespeichert haben, 2 und 5 vom Typ Integer sind, 6.7 vom Typ float und 'Hi' vom Typ String sind. Alle diese Elemente sind in a eingeschlossen Liste und das macht es zu einer Liste.
Wir können auch eine leere Liste deklarieren. Wir können eine Liste auch in einer anderen Liste deklarieren und dies als verschachtelte Liste bezeichnen.
Beispiel 5:
List = (‘Hi’, (2, 4, 5), (‘Hello’))
Im obigen Beispiel können Sie beobachten, dass eine Liste in einer anderen Liste deklariert wurde.
Zugriff auf Werte in der Liste
Es gibt verschiedene Möglichkeiten, wie wir auf die in der Liste in Python enthaltenen Elemente zugreifen können.
Mit Hilfe des Index können wir auf die Elemente der Liste zugreifen. Der Index beginnt bei 0 und der Index sollte immer eine Ganzzahl sein. Wenn wir einen anderen Index als eine Ganzzahl wie float verwenden, führt dies zu TypeError.
Beispiel 1:
List = (2, 5, 6.7, ‘Hi’) print(“List is:”, List)
Ausgabe:
Liste ist: (2, 5, 6.7, 'Hi')
Ausgabe:
beste Programme zur Überwachung der CPU-Temperatur
Im obigen Beispiel drucken wir die Liste direkt mit der Druckfunktion, wir greifen nicht auf das einzelne Element aus der Liste zu.
Greifen wir über die Liste auf das einzelne Element zu.
Beispiel: 2
List = (2, 5, 6.7, ‘Hi’) print(“Second element of the list is:”, List(1))
Ausgabe:
Das zweite Element der Liste ist: 5
Ausgabe:
Im obigen Beispiel können Sie beobachten, dass wir das zweite Element der Liste drucken, das 5 ist. Möglicherweise erhalten Sie jedoch eine Frage, warum in der print-Anweisung die Liste (1) gedruckt wird. Dies liegt daran, dass der Index bei Null beginnt und sich Liste (1) daher auf das zweite Element der Liste bezieht.
Beispiel: 3
List = (2, 5, 6.7, ‘Hi’) print(“First element in the List is: ”, List(0)) print(“Last element in the List is: ”, List(3))
Ausgabe:
Das erste Element in der Liste ist: 2
Das letzte Element in der Liste ist: Hi
Ausgabe:
Beispiel: 4
List = (‘Hi’, (2, 4, 5)) print(“First element of the list is: ”, List(0)(1)) print(“Elements present inside another list is: ”, List(1)(2))
Ausgabe:
Das erste Element der Liste ist: i
Elemente, die in einer anderen Liste vorhanden sind, sind: 5
Ausgabe:
Wenn Sie im obigen Programm genau hinschauen, können Sie sehen, dass wir auf die Elemente aus der verschachtelten Liste zugreifen.
Intern werden die Daten in einem Matrixformat wie unten gezeigt gespeichert:
Hallo
2 4 5
Wenn wir also versuchen, auf List (0) (1) zuzugreifen, zeigt dies auf 1stReihe und 2ndSpalte, dabei werden die Daten 'i' sein.
Wenn wir versuchen, auf Liste (1) (2) zuzugreifen, zeigt dies auf 2ndReihe und 3rdSpalte, dadurch werden Daten 5 sein.
Negative Indizierung
Wir können auch über einen negativen Index auf Daten zugreifen. Ein negativer Index beginnt immer bei -1 und -1 bezieht sich auf das letzte Element und -2 bezieht sich auf das letzte zweite Element und so weiter.
Beispiel 1
List = (2, 5, 7, 3) print(“Last element in the list is: ”, List(-1))
Ausgabe:
Das letzte Element in der Liste ist: 3
Ausgabe:
Beispiel: 2
List = (2, 5, 7, 3) print(“Second element in the list is: ”, List(-3))
Ausgabe:
Das zweite Element in der Liste ist: 5
Ausgabe:
Die Liste aufschneiden
Mit dem Slice-Operator (:) können wir auf eine Reihe von Elementen aus der Liste zugreifen
Beispiel 1
List = (1, 2, 3, 4, 5, 6, 7) print(“Elements from 2nd to 5th is: ”, List(1:5)) print(“Elements beginning to 2rd is: ”, List(:-3)) print(“Elements 4th to end is: ”, List(3:)) print(“Elements from start to end is: “, List(:))
Ausgabe:
Elemente vom 2. bis 5. sind: (2, 3, 4, 5)
Elemente, die mit dem 2. beginnen, sind: (1, 2, 3, 4)
Elemente 4. bis Ende ist: (4, 5, 6, 7)
Elemente von Anfang bis Ende sind: (1, 2, 3, 4, 5, 6, 7)
Ausgabe:
Wir können auch mit der for-Schleife auf die in der Liste enthaltenen Elemente zugreifen.
Beispiel: 2
List = (1, 2, 3, 4, 5, 6, 7) forele in List: print(ele)
Ausgabe:
1
zwei
3
4
5
6
7
Ausgabe:
Beachten Sie das folgende Indexierungsformat:
H. | IS | L. | L. | ODER | 5 | 7 | 9 | 4 |
0 | 1 | zwei | 3 | 4 | 5 | 6 | 7 | 8 |
-9 | -8 | -7 | -6 | -5 | -4 | -3 | -2 | -1 |
Wie bereits erwähnt, ist List in Python veränderbar. Dies bedeutet, dass die Elemente geändert werden können, selbst wenn es sich um eine Ganzzahl oder einen String oder einen beliebigen Datentyp handelt.
Wir können die Liste mit dem Zuweisungsoperator aktualisieren.
Beispiel: 3
List = (2, 4, 6, 9) #updating the first element List(0) = 7 print(“Updated list is: ”, List)
Ausgabe:
Die aktualisierte Liste lautet: (7, 4, 6, 9)
Ausgabe:
Im obigen Beispiel aktualisieren wir das erste Element der Liste '2' mit einem neuen Element '7'.
Beispiel: 4
List = (2, 5, 1, 3, 6, 9, 7) #updating one or more elements of the list at once List(2:6) = (2, 4, 9, 0) print(“Updated List is: ”, List)
Ausgabe:
Die aktualisierte Liste lautet: (2, 5, 2, 4, 9, 0, 7)
Im obigen Beispiel aktualisieren wir die Datenliste in der Liste.
Ausgabe:
Hinzufügen von Elementen zur Liste
Es gibt verschiedene Möglichkeiten, wie wir der Liste Elemente hinzufügen können, und Python verfügt über eine integrierte Funktion namens append ().
Mit append () können wir der Liste nur ein Element hinzufügen. Wenn Sie der Liste mehrere Elemente hinzufügen möchten, müssen wir davon Gebrauch machen für Schleife . Die Funktion append () fügt immer das Element am Ende der Liste hinzu. Die Funktion append () akzeptiert nur ein Argument.
Wenn Sie Elemente an einer bestimmten Position hinzufügen möchten, müssen Sie nur die Methode insert () verwenden. insert () verwendet zwei Argumente, d. h. Position und Wert, Position bezieht sich auf den Index, wobei die Elemente hinzugefügt werden müssen, und Wert bezieht sich auf das Element, das der Liste hinzugefügt werden soll.
Es gibt noch eine weitere Methode namens extens (), mit der wir der Liste Elemente hinzufügen können. Die Methode expand () wird verwendet, um der Liste eine Liste von Elementen hinzuzufügen. Ähnlich wie bei der append () -Methode und der expand () -Methode werden auch Elemente am Ende der Liste hinzugefügt.
Beispiel 1
List = (“Hello”, “Good Morning”) print(“List before appending values is: “, List) List.append(“Python”) List.append(“Hi”) print(“List after appending values is: ”, List)
Ausgabe:
Die Liste vor dem Anhängen von Werten lautet: ('Hallo', 'Guten Morgen')
Die Liste nach dem Anhängen von Werten lautet: ('Hallo', 'Guten Morgen', 'Python', 'Hallo')
Im obigen Beispiel hängen wir die Werte 'Python' und 'Hi' an das Ende der Liste an.
Ausgabe:
Beispiel: 2
List = (“Hello”, “Good Morning”) print(“List before appending values is: “, List) print(“Length of the list before appending is: “, len(List)) List.append(“Python”) List.append(“Hi”) print(“List after appending values is: ”, List) print(“Length of the list after appending is: “, len(List))
Ausgabe:
Die Liste vor dem Anhängen von Werten lautet: ('Hallo', 'Guten Morgen')
Die Länge der Liste vor dem Anhängen beträgt: 2
Die Liste nach dem Anhängen von Werten lautet: ('Hallo', 'Guten Morgen', 'Python', 'Hallo')
Die Länge der Liste nach dem Anhängen beträgt: 4
Wir können die Länge der Liste mit der Funktion len () ermitteln, wie im obigen Beispiel gezeigt.
Ausgabe:
Mit der for-Schleife können wir der Liste auch mehrere Werte hinzufügen.
Beispiel: 3
List = (7, 9, 8) print(“List before adding elements is: “, List) print(“Length of List before adding elements is: “, len(List)) for i in range(2, 6): List.append(i) print(“List after adding elements is: “, List) print(“Length of List after adding elements is: “, len(List))
Ausgabe:
Die Liste vor dem Hinzufügen von Elementen lautet: (7, 9, 8)
Die Länge der Liste vor dem Hinzufügen von Elementen beträgt: 3
Liste nach dem Hinzufügen von Elementen ist: (7, 9, 8, 2, 3, 4, 5)
Die Länge der Liste nach dem Hinzufügen von Elementen beträgt: 7
Ausgabe:
Was passiert, wenn wir eine Liste mit Listen an eine Liste anhängen? Sehen wir uns das im folgenden Beispiel an.
Beispiel: 4
List1 = (“Hi”, “Python”) List2 = (1, 5, 7, 2) List1.append(List2) print(“List1 after appending List2 is: “, List1)
Ausgabe:
Liste1 nach dem Anhängen von Liste2 lautet: ('Hi', 'Python', (1, 5, 7, 2))
Wenn Sie im obigen Beispiel feststellen, dass List1 an List1 angehängt wird, wird List1 zu einer verschachtelten Liste.
Ausgabe:
Wenn Sie die Liste nach dem Anhängen der Liste nicht als verschachtelte Liste erstellen möchten, ist es besser, die Methode extens () zu verwenden.
Beispiel: 5
List1 = (“Hi”, “Python”) List2 = (1, 5, 7, 2) List1.extend(List2) print(“List1 after appending List2 is: “, List1)
Ausgabe:
Liste1 nach dem Anhängen von Liste2 lautet: ('Hi', 'Python', 1, 5, 7, 2)
Wenn wir die Extend () -Methode verwenden, werden die Elemente von List1 um die Elemente von List2 erweitert. Denken Sie daran, dass die Liste nicht angehängt wird, wenn wir die Extend () -Methode verwenden.
Ausgabe:
Wenn Sie eine Liste mit einer Zeichenfolge erweitern, wird jedes Zeichen der Zeichenfolge an die Liste angehängt, da eine Zeichenfolge iterierbar ist.
Beispiel: 6
List = (1, 5, 7, 2) List.extend(“Python”) print(“List after extending the String is: “, List)
Ausgabe:
Die Liste nach dem Erweitern des Strings lautet: (1, 5, 7, 2, 'P', 'y', 't', 'h', 'o', 'n')
Ausgabe:
Liste append () vs verlängern ()
Schauen wir uns einige Beispiele für extens () und append () an.
Beispiel 1
def my_fun(): List1 = (“Hi”, 1, “Hello”, 2, 5) print(“The elements of List is: “, List) List.append(“Python”) print(“List after appending the String is: “, List) List.append((“one”, “two”, 3)) print(“List after appending the list is: “, List) List2 = (“Apple”, “Orange”, 2, 8) List1.extend(List2) print(“List1 after extending the List2 is: “, List1) if __name__ == “__main__”: my_fun()
Ausgabe:
Die Elemente der Liste sind: ('Hallo', 1, 'Hallo', 2, 5)
Die Liste nach dem Anhängen des Strings lautet: ('Hi', 1, 'Hello', 2, 5, 'Python')
Die Liste nach dem Anhängen der Liste lautet: ('Hallo', 1, 'Hallo', 2, 5, 'Python', ('Eins', 'Zwei', 3))
Liste1 nach dem Erweitern der Liste2 lautet: ('Hallo', 1, 'Hallo', 2, 5, 'Python', ('Eins', 'Zwei', 3), 'Apfel', 'Orange', 2, 8)
Ausgabe:
Beispiel: 2
List = (“Apple”, “Orange”, “Mango”, “Strawberry”) print(“List before inserting is: “, List) List.insert(2, “Watermelon”) print(“List after inserting is: “, List)
Ausgabe:
Liste vor dem Einfügen ist: ('Apfel', 'Orange', 'Mango', 'Erdbeere')
Liste nach dem Einfügen ist: ('Apfel', 'Orange', 'Wassermelone', 'Mango', 'Erdbeere')
Ausgabe
Wie bereits erwähnt, wird die Methode insert () verwendet, um Werte an einem bestimmten Index der Liste einzufügen.
Beispiel: 3
List1 = (2, 4, 6, 8) print(“List after adding the elements is: “, List1 + (1, 3, 5, 7)) print(“After adding same elements repeatedly is: “, (“Hi”) *5)
Ausgabe:
Die Liste nach dem Hinzufügen der Elemente lautet: (2, 4, 6, 8, 1, 3, 5, 7)
Nach dem wiederholten Hinzufügen der gleichen Elemente ist: ('Hi', 'Hi', 'Hi', 'Hi', 'Hi')
Ausgabe:
Elemente aus einer Liste löschen oder entfernen
Wir können Elemente auch mit den Anweisungen del und remove () löschen oder aus der Liste entfernen.
Freizeituhr App für PC
Sehen wir uns das folgende Beispiel an.
Beispiel 1
List = (1, 2, 3, 4, 5, 6, 7, 8, 9) print(“List before deleting 3rd element is: ”, List) del List(3) print(“List after deleting 3rd element is: ”, List) del List(1:3) print(“List after deleting multiple elements is: “, List)
Ausgabe:
Die Liste vor dem Löschen des 3. Elements lautet: (1, 2, 3, 4, 5, 6, 7, 8, 9)
Liste nach dem Löschen des 3. Elements ist: (1, 2, 3, 5, 6, 7, 8, 9)
Die Liste nach dem Löschen mehrerer Elemente lautet: (1, 5, 6, 7, 8, 9)
Im obigen Beispiel können Sie feststellen, dass wir die del-Anweisung verwendet haben, um ein Element oder mehrere Anweisungen aus der Liste zu löschen.
Ausgabe:
Nun werden wir uns mit der remove () -Methode befassen.
Beispiel: 2
List = (1, 2, 3, 4, 5, 6, 7) print(“List before removing a element is: “, List) List.remove(3) print(“List after removing a element is: “, List) List.pop() print(“List after poping the element is: “, List)
Ausgabe:
Die Liste vor dem Entfernen eines Elements lautet: (1, 2, 3, 4, 5, 6, 7)
Die Liste nach dem Entfernen eines Elements lautet: (1, 2, 4, 5, 6, 7)
Liste nach dem Poppen des Elements ist: (1, 2, 4, 5, 6)
Im obigen Beispiel können Sie beobachten, dass wir ein Element mit der Methode remove () aus der Liste entfernen. Mit der pop () -Methode wird das letzte Element aus der Liste entfernt / gelöscht.
Ausgabe:
Methoden auflisten
Methoden | Beschreibung |
---|---|
klar() | So entfernen Sie alle Elemente aus der Liste. |
append () | Element am Ende der Liste hinzufügen. |
einfügen() | Einfügen eines Elements an einem bestimmten Index der Liste. |
erweitern() | Hinzufügen einer Liste von Elementen am Ende der Liste. |
Anzahl() | Anzahl der Elemente mit einem bestimmten Wert zurückgeben. |
Index() | Rückgabe des Index des ersten Elements. |
umkehren() | Um eine vorhandene Liste umzukehren. |
entfernen() | So entfernen Sie die Elemente aus der Liste. |
Fazit
In diesem Tutorial haben wir uns einige angesehen Eigenschaften von Python-Listen zusammen mit den verschiedenen Arten der Manipulation einer Liste wie Erstellen einer Liste , Zugriff auf Elemente aus einer Liste , und Ersetzen von Elementen aus einer Liste.
Dieses Tutorial zur Python-Liste kann mit den folgenden Zeigern abgeschlossen werden:
- List ist einer der Datentypen in Python, der auch als Datenstruktur bezeichnet wird.
- List wird zum Speichern einer großen Anzahl von Werten beliebiger Datentypen in einer einzigen Variablen verwendet, was wiederum den einfachen Zugriff erleichtert.
- Der Index für die Liste beginnt wie bei den anderen Programmiersprachen immer bei Null.
- Wenn Sie an einer Liste arbeiten, müssen Sie sich an alle gängigen integrierten Funktionen erinnern.
=> Besuchen Sie hier, um Python von Grund auf neu zu lernen
Literatur-Empfehlungen
- Python-Tutorial für Anfänger (KOSTENLOSES Python-Training zum Anfassen)
- Python-Variablen
- Python Advanced List Tutorial (Listensortierung, Umkehren, Indexieren, Kopieren, Verbinden, Summen)
- Python Tuple Tutorial mit praktischen Beispielen
- Python-String-Funktionen
- Listen in STL
- Datenstruktur der verknüpften Liste in C ++ mit Abbildung
- Datenstruktur für zirkuläre verknüpfte Listen in C ++ mit Abbildung