Python-Listen-Slicing

Python-Listen-Slicing

In Python ist das Listen-Slicing eine gängige Praxis und die von Programmierern am häufigsten verwendete Technik zur effizienten Lösung von Problemen. Stellen Sie sich eine Python-Liste vor. Um auf eine Reihe von Elementen in einer Liste zuzugreifen, müssen Sie eine Liste aufteilen. Eine Möglichkeit, dies zu tun, ist die Verwendung des einfachen Slicing-Operators, d. h. Colon(:). Mit diesem Operator kann man angeben, wo mit dem Slicing begonnen werden soll, wo enden soll, und den Schritt angeben. Beim Listen-Slicing wird eine neue Liste aus der vorhandenen Liste zurückgegeben.

Python-Listen-Slicing-Syntax

Das Format für das Listen-Slicing ist von Python Das Listen-Slicing läuft wie folgt ab:

Lst  [   Initial   :   End   :   IndexJump   ] 

Wenn Lst eine Liste ist, gibt der obige Ausdruck den Teil der Liste aus dem Index zurück Anfänglich indexieren Ende , bei einer Schrittweite IndexJump .

Indizierung in der Python-Liste

Die Indizierung ist eine Technik für den Zugriff auf die Elemente von a Python-Liste . Es gibt verschiedene Möglichkeiten, auf ein Element einer Liste zuzugreifen.

Positive Indizes

Bei der positiven Indizierung hat das erste Element der Liste die Indexnummer 0 und das letzte Element der Liste die Indexnummer N-1, wobei N die Gesamtzahl der Elemente in der Liste (Größe der Liste) ist ).

Positive Indizierung einer Python-Liste

Positive Indizierung einer Python-Liste

Beispiel:

In diesem Beispiel zeigen wir eine ganze Liste mit positivem Index-Slicing an.

Python3




# Initialize list> Lst> => [> 50> ,> 70> ,> 30> ,> 20> ,> 90> ,> 10> ,> 50> ]> # Display list> print> (Lst[::])>

Ausgabe:

[50, 70, 30, 20, 90, 10, 50] 

Negative Indizes

Das folgende Diagramm zeigt eine Liste zusammen mit ihren negativen Indizes. Index -1 stellt das letzte Element und -N das erste Element der Liste dar, wobei N die Länge der Liste ist.

Negative Indizierung einer Python-Liste

Negative Indizierung einer Python-Liste

Beispiel:

In diesem Beispiel greifen wir mithilfe einer negativen Indizierung auf die Elemente einer Liste zu.

Python3




# Initialize list> Lst> => [> 50> ,> 70> ,> 30> ,> 20> ,> 90> ,> 10> ,> 50> ]> # Display list> print> (Lst[> -> 7> ::> 1> ])>

Ausgabe:

[50, 70, 30, 20, 90, 10, 50] 

Schneiden

Wie bereits erwähnt, ist das Listen-Slicing in Python eine gängige Praxis und kann sowohl mit positiven als auch mit negativen Indizes verwendet werden. Das folgende Diagramm veranschaulicht die Technik des List-Slicing:

Python-Listen-Slicing

Python-Listen-Slicing

Beispiel:

In diesem Beispiel werden wir die obige Abbildung in Python-Code umwandeln.

Python3




# Initialize list> Lst> => [> 50> ,> 70> ,> 30> ,> 20> ,> 90> ,> 10> ,> 50> ]> # Display list> print> (Lst[> 1> :> 5> ])>

Ausgabe:

[70, 30, 20, 90] 

Beispiele für List Slicing in Python

Sehen wir uns einige Beispiele an, die die Verwendung von List Slicing in Python veranschaulichen.

Beispiel 1: Wenn Sie Argumente wie „Initial“, „End“ oder „IndexJump“ leer lassen, werden Standardwerte verwendet, d. h. 0 als „Initial“, Länge der Liste als „End“ und 1 als „IndexJump“.

Python3




# Initialize list> List> => [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ,> 6> ,> 7> ,> 8> ,> 9> ]> # Show original list> print> (> 'Original List: '> ,> List> )> print> (> ' Sliced Lists: '> )> # Display sliced list> print> (> List> [> 3> :> 9> :> 2> ])> # Display sliced list> print> (> List> [::> 2> ])> # Display sliced list> print> (> List> [::])>

Ausgabe:

Original List: [1, 2, 3, 4, 5, 6, 7, 8, 9] Sliced Lists: [4, 6, 8] [1, 3, 5, 7, 9] [1, 2, 3, 4, 5, 6, 7, 8, 9] 

Beispiel 2: Eine umgekehrte Liste kann generiert werden, indem eine negative Ganzzahl als IndexJump-Argument verwendet wird. Lassen Sie den Anfangs- und Endpunkt leer. Wenn der IndexJump-Wert negativ ist, müssen wir die Anfangs- und Endwerte gemäß einer umgekehrten Liste auswählen.

Python3




# Initialize list> List> => [> 'Geeks'> ,> 4> ,> 'geeks !'> ]> # Show original list> print> (> 'Original List: '> ,> List> )> print> (> ' Sliced Lists: '> )> # Display sliced list> print> (> List> [::> -> 1> ])> # Display sliced list> print> (> List> [::> -> 3> ])> # Display sliced list> print> (> List> [:> 1> :> -> 2> ])>

Ausgabe:

Original List: ['Geeks', 4, 'geeks !'] Sliced Lists: ['geeks !', 4, 'Geeks'] ['geeks !'] ['geeks !'] 

Beispiel 3: Wenn einige Slicing-Ausdrücke erstellt werden, die keinen Sinn ergeben oder nicht berechenbar sind, werden leere Listen generiert.

Python3




# Initialize list> List> => [> -> 999> ,> 'G4G'> ,> 1706256> ,> '^_^'> ,> 3.1496> ]> # Show original list> print> (> 'Original List: '> ,> List> )> print> (> ' Sliced Lists: '> )> # Display sliced list> print> (> List> [> 10> ::> 2> ])> # Display sliced list> print> (> List> [> 1> :> 1> :> 1> ])> # Display sliced list> print> (> List> [> -> 1> :> -> 1> :> -> 1> ])> # Display sliced list> print> (> List> [:> 0> :])>

Ausgabe:

Original List: [-999, 'G4G', 1706256, '^_^', 3.1496] Sliced Lists: [] [] [] [] 

Beispiel 4: Listen-Slicing kann verwendet werden, um Listen zu ändern oder sogar Elemente aus einer Liste zu löschen.

Python3




# Initialize list> List> => [> -> 999> ,> 'G4G'> ,> 1706256> ,> 3.1496> ,> '^_^'> ]> # Show original list> print> (> 'Original List: '> ,> List> )> print> (> ' Sliced Lists: '> )> # Modified List> List> [> 2> :> 4> ]> => [> 'Geeks'> ,> 'for'> ,> 'Geeks'> ,> '!'> ]> # Display sliced list> print> (> List> )> # Modified List> List> [:> 6> ]> => []> # Display sliced list> print> (> List> )>

Ausgabe:

Original List: [-999, 'G4G', 1706256, 3.1496, '^_^'] Sliced Lists: [-999, 'G4G', 'Geeks', 'for', 'Geeks', '!', '^_^'] ['^_^'] 

Beispiel 5: Durch die Verkettung segmentierter Listen kann eine neue Liste erstellt oder sogar eine bereits vorhandene Liste geändert werden.

Python3




# Initialize list> List> => [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ,> 6> ,> 7> ,> 8> ,> 9> ]> # Show original list> print> (> 'Original List: '> ,> List> )> print> (> ' Sliced Lists: '> )> # Creating new List> newList> => List> [:> 3> ]> +> List> [> 7> :]> # Display sliced list> print> (newList)> # Changing existing List> List> => List> [::> 2> ]> +> List> [> 1> ::> 2> ]> # Display sliced list> print> (> List> )>

Ausgabe:

Original List: [1, 2, 3, 4, 5, 6, 7, 8, 9] Sliced Lists: [1, 2, 3, 8, 9] [1, 3, 5, 7, 9, 2, 4, 6, 8]