Hemos visto cómo acceder a caracteres individuales de una cadena con []. También es posible seleccionar un segmento específico de una cadena, es decir, tomar varios caracteres consecutivos. Esto se puede lograr con los mismos corchetes [], pero proporcionando dos números: el inicio y el fin de la selección:
s = 'This is a long long string'
print(s[0: 1]) # T
print(s[0: 2]) # Th
print(s[0: 18]) # This is a long lon
print(s[1: 3]) # hi
print(s[1: -1]) # his is a long long strin
print(s[3: -2]) # s is a long long stri
print(s[-10: -2]) # ong stri
Nota 1: El inicio siempre es inclusivo y el fin siempre es exclusivo ⇒ [inicio; fin).
Nota 2: Tanto el inicio como el fin pueden ser negativos, lo que implica indexación negativa.
Desafío
Queremos saber cuál es el segmento central de una cadena.
Dada una cadena de longitud n, nos gustaría ver las letras que abarcan las posiciones desde n/4 hasta 3n/4.
La entrada contiene una sola línea de texto, que se garantiza que tiene una longitud divisible por 4.