Python: notación de corte en cadena

    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.

     

    Etiquetas:

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *