Artículo original How to Substring a String in Python
Traducido y adaptado por Rafael D. Hernandez

Python ofrece muchas formas de subcadena una cadena. Esto a menudo se llama "rebanar" (slicing).

Aquí está la sintaxis:

cadena[inicio:final:paso]

Adonde,

inicio: El índice de inicio de la subcadena. El carácter de este índice se incluye en la subcadena. Si el inicio no está incluido, se supone que es igual a 0.

final: El índice de terminación de la subcadena. El carácter de este índice no está incluido en la subcadena. Si el final no está incluido, o si el valor especificado excede la longitud de la cadena, se asume que es igual a la longitud de la cadena de forma predeterminada.

step: Cada carácter de "paso" después del carácter actual a incluir. El valor predeterminado es 1. Si no se incluye el paso, se supone que es igual a 1.

Uso básico

cadena[inicio:final]: Obtén todos los caracteres del inicio al final -1

cadena[:final]: Obtén todos los caracteres desde el principio de la cadena hasta el final -1

cadena[inicio:]: Obtén todos los caracteres desde el inicio hasta el fin de la cadena

string[start:end:step]: Obtén todos los caracteres de inicio a final - 1, sin incluir todos los caracteres de cada paso

Ejemplos

1. Obtén los primeros 5 caracteres de una cadena

cadena = "freeCodeCamp"
print(cadena[0:5])

Resultado:

> freeC

Note: print(cadena[:5]) devuelve el mismo resultado que print(cadena[0:5])

2. Obtén una subcadena de 4 caracteres de longitud, a partir del 3.er carácter de la cadena

cadena = "freeCodeCamp"
print(cadena[2:6])

Resultado:

> eeCo

3. Obtén el último carácter de la cadena

cadena = "freeCodeCamp"
print(cadena[-1])

Resultado:

> p

Observa que el índice de inicio o final puede ser un número negativo. Un índice negativo significa que empiezas a contar desde el fin de la cadena en lugar del principio (de derecha a izquierda).

Índice -1 representa el último carácter de la cadena, -2 representa el penúltimo carácter y así sucesivamente.

4. Obtén los últimos 5 caracteres de una cadena

cadena = "freeCodeCamp"
print(cadena[-5:])

Resultado:

> eCamp

5. Obtén una subcadena que contenga todos los caracteres excepto los últimos 4 caracteres y el 1.er carácter

cadema = "freeCodeCamp"
print(cadena[1:-4])

Resultado:

> reeCode

6. Obtén cada otro carácter de una cadena

cadena = "freeCodeCamp"
print(cadena[::2])

Resultado:

> feCdCm