Slicing, replace y split para manipular strings en Python

Clase 12 de 32Curso de Fundamentos de Python

Resumen

Aprende a dominar textos en Python con técnicas prácticas: índices base cero, slicing con fin no incluido, búsquedas seguras con normalización, y métodos esenciales como replace y split. Con estas habilidades trabajarás textos largos con precisión, evitando errores típicos al cortar, reemplazar y comparar cadenas.

¿Cómo funcionan los índices en strings de Python?

Comprender el índice es clave: en Python las posiciones comienzan en 0 y los espacios cuentan como caracteres. Acceder a un carácter se hace con corchetes.

  • El primer carácter tiene índice 0.
  • Los espacios y signos también ocupan posición.
  • Usar print con acceso por índice muestra el carácter correspondiente.

¿Qué es indexación base cero y por qué los espacios cuentan?

  • Base cero: el primer carácter es 0, no 1.
  • Ejemplo práctico: la E de "Este" está en 0; el espacio tras "Este" ocupa una posición.

texto = "Este es un texto" print(texto[0]) # E print(texto[4]) # espacio

¿Cómo acceder a un carácter por índice?

  • Sintaxis: cadena[indice].
  • Si el índice apunta a un espacio, se imprime un espacio.

print(texto[0]) # E print(texto[4]) # ' '

¿Cómo hacer slicing para extraer partes del texto?

El slicing usa rangos [inicio:fin] donde fin no está incluido. Puedes omitir inicio o fin para tomar desde el principio o hasta el final. También puedes contar desde atrás con índices negativos.

  • Fin no incluido: cuenta "uno de más" para abarcar el último carácter deseado.
  • Inicio omitido: toma desde el principio.
  • Fin omitido: llega hasta el final.
  • Negativos: -1 es el último carácter.

¿Cómo usar rangos [inicio:fin] con fin no incluido?

  • Extraer "Este": de 0 a 4 excluido.
  • Si cuentas hasta el último índice visible y lo colocas en fin, ese carácter no se incluye.

print(texto[0:4]) # Este # Hasta el final contando manualmente: cuidado con la última letra print(texto[0:15]) # falta la 'o' final si 15 apunta a esa posición

¿Cómo omitir inicio o fin y usar índices negativos?

  • Desde el principio hasta una posición.
  • Desde una posición hasta el final.
  • Usar negativos para cortar desde atrás y recordar que fin excluye.

print(texto[:7]) # "Este es" print(texto[5:]) # desde la "e" de "es" hasta el final # De la "e" de "es" hasta incluir la "x": fin como -2 para abarcar la X print(texto[5:-2])

¿Cómo reemplazar, dividir y normalizar texto en Python?

Para actualizar contenidos, separar palabras y comparar sin errores por mayúsculas/minúsculas, usa replace, split y lower. Python es case sensitive, por eso la normalización evita falsos negativos en búsquedas.

¿Cómo reemplazar con replace y cuántas veces ocurre?

  • replace cambia todas las apariciones del texto objetivo.
  • Útil para corregir etiquetas o tecnologías mencionadas.

curso = "Este curso es de JavaScript" print(curso.replace("JavaScript", "Python")) # "Este curso es de Python" # Si hubiera múltiples "JavaScript", las reemplaza todas

¿Cómo dividir con split para obtener una lista de palabras?

  • split convierte un string en lista usando un separador.
  • El espacio es un separador común, colócalo entre comillas.

texto_dividido = texto.split(" ") print(texto_dividido) # ['Este', 'es', 'un', 'texto']

¿Cómo comparar sin errores por mayúsculas y minúsculas?

  • Python es case sensitive: distingue mayúsculas y minúsculas.
  • Normaliza con lower (a lowercase) tanto el texto como lo buscado.
  • Usa el operador in para verificar inclusión fiable.

texto2 = "Este Texto tiene MAYÚSCULAS y minúsculas" buscado = "mayúsculas" print(buscado in texto2) # False print(buscado.lower() in texto2.lower()) # True

¿Te gustaría practicar más? Comparte en comentarios tus propios ejemplos de slicing, replace, split y comparaciones con lower para que podamos revisarlos juntos.