Python: notación de corte en cadena

P

Introducción

El término segmentar en programación generalmente se refiere a obtener una subcadena, subtupla o 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 Slicing Strings en Python.

Cortar una String en Python

Hay un par de formas de cortar una String, la más común es mediante el : operador con la siguiente sintaxis:

string[start:end]
string[start:end:step]

los start parámetro representa el índice inicial, end es el índice final, y step es el número de elementos sobre los que se “pasa”.

Sigamos adelante y cortemos una String:

string = 'No. I am your father.'
print(string[4:20])

Esto omitirá los primeros cuatro caracteres de la cadena:

I am your father

Encontrar el prefijo y el sufijo de longitud n con notación de corte

Para encontrar el prefijo o sufijo de longitud n de una cadena, usaremos el mismo enfoque que se puede usar para encontrar la cola o la cabeza de una lista. Cortaremos desde el principio hasta n y de -n hasta el final de la cadena.

En este caso, -n comenzará a contar desde el final de la cadena, hacia atrás, dándonos un sufijo:

n = 4
string = 'Now, young Skywalker, you will die.'

# Prefix of length n
print(string[:n])
# Sufix of length n
print(string[-n:])

Esto resulta en:

Now,
die.

Invertir una cadena usando notación de corte

Para invertir una cadena, podemos establecer el step de la notación de corte a -1. Esto hace que el paso retroceda, incluyendo cada elemento sobre el que pisa, lo que hace que la cadena se imprima al revés:

string = 'I’ll never turn to the dark side. You’ve failed, your highness. I am a Jedi, like my father before me.'
print(string[::-1])

Este código daría como resultado:

.em erofeb rehtaf ym ekil ,ideJ a ma I .ssenhgih ruoy ,deliaf ev’uoY .edis krad eht ot nrut reven ll’I

Encontrar cada enésimo carácter de una cadena

Extraer cada n-ésimo carácter se reduce a configurar el parámetro de paso en n. Si quieres cada segundo personaje, pasarás por encima de cada segundo personaje también:

n = 3
string = 'There’s always a bigger fish.'
print(string[::n])

Este código se imprimirá cada tres letras:

Trslyaiefh

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 últimos elementos de una secuencia, o invertir su orden.

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

 

About the author

Ramiro de la Vega

Bienvenido a Pharos.sh

Soy Ramiro de la Vega, Estadounidense con raíces Españolas. Empecé a programar hace casi 20 años cuando era muy jovencito.

Espero que en mi web encuentres la inspiración y ayuda que necesitas para adentrarte en el fantástico mundo de la programación y conseguir tus objetivos por difíciles que sean.

Add comment

Sobre mi

Últimos Post

Etiquetas

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con tus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, aceptas el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad