logo

Python List Slicing

În Python, tăierea listelor este o practică obișnuită și este cea mai folosită tehnică pentru programatori pentru a rezolva probleme eficiente. Luați în considerare o listă Python, pentru a accesa o serie de elemente dintr-o listă, trebuie să tăiați o listă. O modalitate de a face acest lucru este să utilizați operatorul simplu de tăiere, adică două puncte (:). Cu acest operator, se poate specifica unde să înceapă tăierea, unde să se termine și să specificați pasul. Tăierea listei returnează o nouă listă din lista existentă.

Sintaxa Python List Slicing

Formatul pentru tăierea listei este de Piton List Slicing este după cum urmează:

Lst  [   Initial   :   End   :   IndexJump   ]>

Dacă Lst este o listă, atunci expresia de mai sus returnează porțiunea din listă din index Iniţială a indexa Sfârşit , la un pas IndexJump .



Indexarea în lista Python

Indexarea este o tehnică de accesare a elementelor a Lista Python . Există diferite moduri prin care putem accesa un element dintr-o listă.

Indici pozitivi

În cazul indexării pozitive, primul element al listei are numărul de index 0, iar ultimul element al listei are numărul de index N-1, unde N este numărul total de elemente din listă (dimensiunea listei). ).

Indexarea pozitivă a unei liste Python

Indexarea pozitivă a unei liste Python

Exemplu:

În acest exemplu, vom afișa o listă întreagă folosind indexul pozitiv.

Python3




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

>

>

Ieșire:

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

Indici negativi

Diagrama de mai jos ilustrează o listă împreună cu indicii ei negativi. Indexul -1 reprezintă ultimul element și -N reprezintă primul element al listei, unde N este lungimea listei.

Indexarea negativă a unei liste Python

Indexarea negativă a unei liste Python

Exemplu:

În acest exemplu, vom accesa elementele unei liste folosind indexarea negativă.

Python3




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

>

>

Ieșire:

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

Tăierea

După cum am menționat mai devreme, tăierea listelor în Python este o practică obișnuită și poate fi utilizată atât cu indici pozitivi, cât și cu indici negativi. Diagrama de mai jos ilustrează tehnica tăierii listei:

Python List Slicing

Python List Slicing

Exemplu:

În acest exemplu, vom transforma ilustrația de mai sus în cod Python.

Python3




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

>

>

Ieșire:

[70, 30, 20, 90]>

Exemple de List Slicing în Python

Să vedem câteva exemple care descriu utilizarea tăierii listelor în Python.

Exemplul 1: Lăsarea oricărui argument precum Initial, End sau IndexJump necompletat va duce la utilizarea valorilor implicite, adică 0 ca inițial, lungimea listei ca End și 1 ca 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>[::])>

>

>

cout

Ieșire:

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

Exemplul 2: O listă inversată poate fi generată utilizând un număr întreg negativ ca argument IndexJump. Lăsând inițiala și sfârșitul ca necompletate. Trebuie să alegem valorile inițiale și finale în funcție de o listă inversată dacă valoarea IndexJump este negativă.

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

>

>

Ieșire:

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

Exemplul 3: Dacă sunt făcute unele expresii de feliere care nu au sens sau sunt incalculabile, atunci se generează liste goale.

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

>

>

Ieșire:

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

Exemplul 4: Tăierea listelor poate fi folosită pentru a modifica liste sau chiar pentru a șterge elemente dintr-o listă.

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

>

>

Ieșire:

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

Exemplul 5: Prin concatenarea listelor se poate crea o listă nouă sau chiar poate fi modificată o listă preexistentă.

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

>

>

Ieșire:

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