Python: notación de corte en tupla

En este artículo, cubriremos ejemplos de cómo usar la notación de división en tuplas en Python. Cortaremos una tupla, encontraremos los primeros y últimos n elementos, invertiremos una tupla y omitiremos n elementos.

Introducción

El término rebanar en programación generalmente se refiere a obtener una subcadena, una subtupla o una sublista de una cadena, tupla o lista, respectivamente.

Python ofrece una variedad de formas sencillas de dividir no solo estos tres sino cualquier iterable. Un iterable es, como su nombre indica, cualquier objeto sobre el que se pueda iterar.

En este artículo, repasaremos todo lo que necesita saber sobre Cortar tuplas en Python.

Cortar una tupla en Python

Hay un par de formas de dividir una tupla, la más común es usar el operador : con la siguiente sintaxis:

1
2
tuple[start:end]
tuple[start:end:step]

El parámetro start representa el índice inicial, end es el índice final y step es el número de elementos que se "pasan" por encima.

Si paso no se proporciona explícitamente, el valor predeterminado es 1.

Avancemos y cortemos una tupla:

1
2
3
a_tuple = ('You', 'can’t', 'stop', 'the', 'change,', 'any', 'more', 'than', 'you', 'can', 'stop', 'the', 'suns', 'from', 'setting.')
subtuple = a_tuple[1:5]
print(subtuple)

La tupla resultante será:

1
('can’t', 'stop', 'the', 'change,')

Hallar el primero y el último n elementos de una tupla {#encontrar el primero y el último n elementos de una tupla}

Para encontrar el primer y último elemento n de una tupla, cortaremos desde el primer elemento hasta n y luego desde -n hasta el final de la tupla.

-n comenzará a contar desde el final de la tupla, hacia atrás, dándonos los últimos n elementos:

1
2
3
4
5
6
7
n = 2
a_tuple = ('I', 'find', 'your', 'lack', 'of', 'faith', 'disturbing.')

first_n_tuple = a_tuple[:n]
print(first_n_tuple)
last_n_tuple = a_tuple[-n:]
print(last_n_tuple)

Las subtuplas resultantes son:

1
2
('I', 'find')
('faith', 'disturbing.')

Tupla inversa con notación de corte

Si establecemos el parámetro paso en -1, comenzará a retroceder. Si incluimos la totalidad, o incluso una parte de la tupla, y simplemente damos un paso atrás, revertirá efectivamente el contenido de la tupla:

1
2
3
a_tuple = ('Fear', 'is', 'the', 'path', 'to', 'the', 'dark', 'side.', 'Fear', 'leads', 'to', 'anger;', 'anger', 'leads', 'to', 'hate;', 'hate', 'leads', 'to', 'suffering.', 'I', 'sense', 'much', 'fear', 'in', 'you.', 7)
reverse_tuple = a_tuple[::-1]
print(reverse_tuple)

La tupla invertida será:

1
(7, 'you.', 'in', 'fear', 'much', 'sense', 'I', 'suffering.', 'to', 'leads', 'hate', 'hate;', 'to', 'leads', 'anger', 'anger;', 'to', 'leads', 'Fear', 'side.', 'dark', 'the', 'to', 'path', 'the', 'is', 'Fear')

Encontrar cada n-ésimo elemento de una tupla

Para encontrar cada elemento n-ésimo de una tupla, saltaremos sobre todos los elementos que no sean n configurando el paso para que sea n:

1
2
3
4
n = 5
a_tuple = ('The', 'dark', 'side', 'of', 'the', 'Force', 'is', 'a', 'pathway', 'to', 'many', 'abilities', 'some', 'consider', 'to', 'be', 'unnatural.')
replaced_tuple = a_tuple[::n]
print(replaced_tuple)

Esto resultará en una tupla:

1
('The', 'Force', 'many', 'be')

Conclusión

Cortar cualquier secuencia en Python es fácil, simple e intuitivo. La indexación negativa ofrece una manera fácil de adquirir los primeros o los últimos elementos de una secuencia, o invertir su orden.

En este artículo, hemos cubierto cómo aplicar la notación de corte en tuplas en Python.

Licensed under CC BY-NC-SA 4.0