logo

Python List Slicing

A Python, el tall de llista és una pràctica habitual i és la tècnica més utilitzada pels programadors per resoldre problemes eficients. Considereu una llista de Python, per accedir a una sèrie d'elements d'una llista, heu de tallar una llista. Una manera de fer-ho és utilitzar l'operador de tall simple, és a dir, dos punts (:). Amb aquest operador, es pot especificar on començar el tall, on finalitzar i especificar el pas. El tall de llista retorna una llista nova de la llista existent.

Sintaxi de tall de llista de Python

El format per al tall de llista és de Python El tall de llista és el següent:



Lst  [   Initial   :   End   :   IndexJump   ]>

Si Lst és una llista, llavors l'expressió anterior retorna la part de la llista de l'índex Inicial indexar Final , a una mida de pas Salt d'índex .

Indexació a Python List

La indexació és una tècnica per accedir als elements d'a Llista de Python . Hi ha diverses maneres d'accedir a un element d'una llista.

Índexs positius

En el cas de la indexació positiva, el primer element de la llista té el número d'índex 0 i l'últim element de la llista té el número d'índex N-1, on N és el nombre total d'elements de la llista (mida de la llista). ).



Indexació positiva d'una llista de Python

Indexació positiva d'una llista de Python

Exemple:

En aquest exemple, mostrarem una llista sencera utilitzant el tall d'índex positiu.



Python 3




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

>

>

Sortida:

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

Índexs negatius

El diagrama següent il·lustra una llista juntament amb els seus índexs negatius. L'índex -1 representa l'últim element i -N representa el primer element de la llista, on N és la longitud de la llista.

Indexació negativa d'una llista de Python

Indexació negativa d'una llista de Python

Exemple:

En aquest exemple, accedirem als elements d'una llista mitjançant la indexació negativa.

Python 3




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

>

>

Sortida:

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

Tallar

Com s'ha esmentat anteriorment, el tall de llista a Python és una pràctica habitual i es pot utilitzar tant amb índexs positius com amb índexs negatius. El diagrama següent il·lustra la tècnica de tall de llista:

Python List Slicing

Python List Slicing

Exemple:

En aquest exemple, transformarem la il·lustració anterior en codi Python.

Python 3




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

>

>

Sortida:

[70, 30, 20, 90]>

Exemples de tall de llista a Python

Vegem alguns exemples que representen l'ús de llistes de llista a Python.

Exemple 1: Si deixeu qualsevol argument com Initial, End o IndexJump en blanc, s'utilitzaran valors predeterminats, és a dir, 0 com a inicial, la longitud de la llista com a End i 1 com a IndexJump.

Python 3




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

>

>

models d'aprenentatge automàtic

Sortida:

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

Exemple 2: Es pot generar una llista invertida utilitzant un nombre enter negatiu com a argument IndexJump. Deixant la inicial i el final en blanc. Hem de triar els valors inicial i final d'acord amb una llista invertida si el valor d'IndexJump és negatiu.

Python 3




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

>

>

Sortida:

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

Exemple 3: Si es fan algunes expressions de tall que no tenen sentit o són incomputables, es generen llistes buides.

Python 3




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

>

>

Sortida:

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

Exemple 4: El tall de llista es pot utilitzar per modificar llistes o fins i tot eliminar elements d'una llista.

Python 3




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

>

>

Sortida:

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

Exemple 5: Mitjançant la concatenació de llistes en rodanxes, es pot crear una llista nova o fins i tot es pot modificar una llista preexistent.

Python 3




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

>

>

Sortida:

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