17 - Métodos para el procesamiento avanzado de strings
Lección 17 del curso Python Nivel Intermedio.
Tabla de contenido
Introducción
En la lección anterior, cuando desarrollamos la práctica de criptografía en Python, hicimos un procesamiento básico de texto en donde separamos las múltiples líneas y las múltiples palabras y las almacenamos en un listado para su posterior procesamiento.
En esta sección veremos métodos más avanzados que los vistos hasta el momento para el procesamiento de strings y particularmente en esta lección veremos varios métodos que permiten entre otros realizar búsquedas, reemplazos, limpieza y modificación de dichos strings.
Suscríbete y accede al código fuente y al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online
Eliminación de espacios en blanco
Podemos usar los métodos strip()
, lstrip()
y rstrip()
para eliminar espacios en blanco (incluyendo secuencias de escape) a ambos lados, al inicio o al final de un string, respectivamente.
Búsqueda de substrings
Dentro de un string podemos buscar secuencias de caracteres (o substrings) de diferentes formas dependiendo de la aplicación.
- Con el método
count()
podemos contar el número de ocurrencias de un substring - El método
index()
permite encontrar la primera posición en la que se encuentra un substring - Podemos usar las palabras clave
in
ynot in
, de la [Librería Estándar de Python] para determinar si un substring se encuentra o no dentro de un string - Y finalmente podemos usar los métodos
startswith()
oendswith()
para determinar si un strings comienza o termina, respectivamente, con un substring en particular
Reemplazando substrings
Usando el método replace()
es posible localizar un substring y reemplazar sus valores dentro del string original.
Partición y unión de strings
En la práctica anterior hicimos algo similar: teníamos un texto con varias líneas y varias palabras y creamos un listado con las palabras individuales. Esto se conoce como partición.
Y también podemos combinar varios substrings en uno solo, lo que se conoce como unión.
Los strings en Python poseen varios métodos para este tipo de tareas:
- Con
split()
podemos realizar la partición de un string, generando un listado con cada uno de los substrings generados - Con
join()
podemos hacer lo opuesto: concatenar múltiples substrings - También podemos generar particiones sobre strings más complejos usando el método
partition()
- Y con
splitlines()
podemos realizar la partición de un string que contiene múltiples líneas
Manipulación de strings crudos (raw strings)
Usualmente cuando estamos trabajando con rutas de archivos (especialmente en Windows) estas son almacenadas usando secuencias de escape (\
). Por ejemplo como en el caso de esta ruta:
C:\Carpeta\Subcarpeta\archivo.txt
Pero esto resulta problemático pues el \
seguido de un caracter puede ser interpretado por Python como una secuencia de escape.
Una alternativa es usar \\
en lugar de \
al momento de escribir el nombre de la ruta. Pero otro método más conveniente es usando raw strings (strings crudos), que se pueden crear agregando la letra r
antes de las comillas, al momento de la creación del string
Recuerda suscribirte para acceder al código fuente y al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online
Conclusión
Con los métodos que acabamos de ver ya tenemos un set de herramientas para el procesamiento avanzado de strings, sin embargo, en ocasiones estos métodos resultan insuficientes porque el texto que estamos procesando puede tener patrones mucho más complejos.
En estos casos podemos usar lo que se conoce como las Expresiones Regulares. Así que en lo que resta del curso nos enfocaremos en esta herramienta, comenzando en la próxima lección con una introducción a estas Expresiones Regulares en Python.