logo

Python-lijst snijden

In Python is list slicing een gangbare praktijk en het is de meest gebruikte techniek voor programmeurs om efficiënte problemen op te lossen. Overweeg een Python-lijst. Om toegang te krijgen tot een reeks elementen in een lijst, moet u een lijst opsplitsen. Eén manier om dit te doen is door de eenvoudige slice-operator te gebruiken, d.w.z. colon(:). Met deze operator kan men specificeren waar het snijden moet beginnen, waar het moet eindigen, en de stap specificeren. Lijstsegmentatie retourneert een nieuwe lijst uit de bestaande lijst.

Syntaxis voor het segmenteren van Python-lijsten

Het formaat voor het segmenteren van lijsten is van Python Lijst Snijden is als volgt:



Lst  [   Initial   :   End   :   IndexJump   ]>

Als Laatste een lijst is, retourneert de bovenstaande uitdrukking het gedeelte van de lijst uit de index Voorletter indexeren Einde , met een stapgrootte Indexsprong .

Indexeren in Python-lijst

Indexering is een techniek om toegang te krijgen tot de elementen van een Python-lijst . Er zijn verschillende manieren waarop we toegang kunnen krijgen tot een element van een lijst.

Positieve indexen

In het geval van positieve indexering heeft het eerste element van de lijst het indexnummer 0 en het laatste element van de lijst het indexnummer N-1, waarbij N het totale aantal elementen in de lijst is (grootte van de lijst ).



Positieve indexering van een Python-lijst

Positieve indexering van een Python-lijst

Voorbeeld:

In dit voorbeeld geven we een hele lijst weer met behulp van positieve index-slicing.



Python3




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

>

>

Uitgang:

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

Negatieve indexen

Het onderstaande diagram illustreert een lijst met de negatieve indexen ervan. Index -1 vertegenwoordigt het laatste element en -N vertegenwoordigt het eerste element van de lijst, waarbij N de lengte van de lijst is.

Negatieve indexering van een Python-lijst

Negatieve indexering van een Python-lijst

Voorbeeld:

In dit voorbeeld zullen we toegang krijgen tot de elementen van een lijst met behulp van negatieve indexering.

Python3




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

>

>

Uitgang:

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

Snijden

Zoals eerder vermeld is het opdelen van lijsten in Python een gangbare praktijk en kan zowel met positieve als met negatieve indexen worden gebruikt. Het onderstaande diagram illustreert de techniek van het opdelen van lijsten:

Python-lijst snijden

Python-lijst snijden

Voorbeeld:

In dit voorbeeld zullen we de bovenstaande illustratie omzetten in Python-code.

Python3




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

>

>

Uitgang:

[70, 30, 20, 90]>

Voorbeelden van lijstsegmentatie in Python

Laten we enkele voorbeelden bekijken die het gebruik van list-slicing in Python weergeven.

Voorbeeld 1: Als u een argument zoals Initial, End of IndexJump leeg laat, wordt er gebruik gemaakt van standaardwaarden, d.w.z. 0 als Initial, lengte van de lijst als End en 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>[::])>

>

>

tekenreeks als array

Uitgang:

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]>

Voorbeeld 2: Een omgekeerde lijst kan worden gegenereerd door een negatief geheel getal als IndexJump-argument te gebruiken. Laat de Initial en End leeg. We moeten de begin- en eindwaarden kiezen volgens een omgekeerde lijst als de IndexJump-waarde negatief is.

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>])>

>

>

Uitgang:

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

Voorbeeld 3: Als er segmenteringsexpressies worden gemaakt die niet logisch of onberekenbaar zijn, worden er lege lijsten gegenereerd.

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>:])>

>

>

Uitgang:

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

Voorbeeld 4: List-slicing kan worden gebruikt om lijsten te wijzigen of zelfs elementen uit een lijst te verwijderen.

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>)>

>

>

Uitgang:

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

Voorbeeld 5: Door gesegmenteerde lijsten aan elkaar te koppelen, kan een nieuwe lijst worden gemaakt of kan zelfs een reeds bestaande lijst worden gewijzigd.

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>)>

>

>

Uitgang:

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]>