logo

Rezanje seznama Python

V Pythonu je rezanje seznamov običajna praksa in to je najpogosteje uporabljena tehnika programerjev za reševanje učinkovitih problemov. Razmislite o seznamu Python, če želite dostopati do vrste elementov na seznamu, morate seznam razrezati. Eden od načinov za to je uporaba preprostega operatorja za rezanje, tj. dvopičje (:). S tem operatorjem lahko določite, kje naj se rezanje začne, kje konča, in določite korak. Rezanje seznama vrne nov seznam iz obstoječega seznama.

Sintaksa rezanja seznama Python

Format za rezanje seznama je Python Rezanje seznama je naslednje:



Lst  [   Initial   :   End   :   IndexJump   ]>

če Lst je seznam, potem zgornji izraz vrne del seznama iz indeksa Začetna indeksirati Konec , z velikostjo koraka IndexJump .

Indeksiranje v Python List

Indeksiranje je tehnika za dostop do elementov a Seznam Python . Do elementa seznama lahko dostopamo na različne načine.

Pozitivni indeksi

V primeru pozitivnega indeksiranja ima prvi element seznama indeksno številko 0, zadnji element seznama pa indeksno številko N-1, kjer je N skupno število elementov na seznamu (velikost seznama ).



Pozitivno indeksiranje seznama Python

Pozitivno indeksiranje seznama Python

primer:

V tem primeru bomo prikazali celoten seznam z rezanjem s pozitivnim indeksom.



Python3




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

>

>

Izhod:

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

Negativni indeksi

Spodnji diagram prikazuje seznam skupaj z njegovimi negativnimi indeksi. Indeks -1 predstavlja zadnji element in -N predstavlja prvi element seznama, kjer je N dolžina seznama.

Negativno indeksiranje seznama Python

Negativno indeksiranje seznama Python

primer:

V tem primeru bomo do elementov seznama dostopali z uporabo negativnega indeksiranja.

Python3




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

>

>

Izhod:

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

Rezanje

Kot smo že omenili, je rezanje seznamov v Pythonu običajna praksa in se lahko uporablja tako s pozitivnimi kot tudi negativnimi indeksi. Spodnji diagram prikazuje tehniko rezanja seznama:

Rezanje seznama Python

Rezanje seznama Python

primer:

V tem primeru bomo zgornjo ilustracijo preoblikovali v kodo Python.

Python3




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

>

>

Izhod:

[70, 30, 20, 90]>

Primeri rezanja seznamov v Pythonu

Oglejmo si nekaj primerov, ki prikazujejo uporabo rezanja seznamov v Pythonu.

Primer 1: Če pustite kateri koli argument, kot je Začetni, Končni ali IndexJump, prazen, se bodo uporabile privzete vrednosti, tj. 0 kot Začetno, dolžina seznama kot Konec in 1 kot 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>[::])>

>

>

sql count distinct

Izhod:

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

Primer 2: Obrnjen seznam je mogoče ustvariti z uporabo negativnega celega števila kot argumenta IndexJump. Začetek in konec pustite prazna. Če je vrednost IndexJump negativna, moramo izbrati Začetno in Končno vrednost v skladu z obrnjenim seznamom.

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

>

>

Izhod:

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

Primer 3: Če so narejeni nekateri izrazi za rezanje, ki nimajo smisla ali so neizračunljivi, se ustvarijo prazni seznami.

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

>

>

Izhod:

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

Primer 4: Rezanje seznamov lahko uporabite za spreminjanje seznamov ali celo brisanje elementov s seznama.

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

>

>

Izhod:

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

Primer 5: Z združevanjem razrezanih seznamov je mogoče ustvariti nov seznam ali celo spremeniti že obstoječi seznam.

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

>

>

Izhod:

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