El str.splitlines() es una de las funciones que sirve para separar cadenas en python. El día de hoy te explicaremos qué es, para qué sirve y en qué se diferencia de otros métodos.
¿Qué es str.splitlines()?
El método str.splitlines() en el lenguaje Python nos permite dividir una cadena de texto en una lista de subcadenas, lo que separa las líneas según los saltos de línea (como son \n o \r\n). Si estás trabajando con textos multilinea o leyendo archivos línea por línea, es muy recomendado, y lo mejor de todo es que tú puedes decidir si quieres conservar los saltos de línea o no.
Su sintaxis es la siguiente:
cadena.splitlines(keeplinebreaks=False)
El parámetro keeplinebreaks es opcional. Si lo pones como True, conservará los saltos de línea al separar las líneas. Si lo dejas como False (valor por defecto), los saltos de línea no se incluirán en la lista resultante.
Veamos un ejemplo para entender cómo funciona str.splitlines():
txt = "Gracias por la música\nBienvenidos a la jungla"
resultado = txt.splitlines()
print(resultado)
Salida:
['Gracias por la música', 'Bienvenidos a la jungla']
🔴 ¿Quieres Aprender a Programar con Python? 🔴
Descubre el Full Stack Jr. Bootcamp - Aprende a Programar desde Cero de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada
👉 Prueba gratis el Bootcamp Aprende a Programar desde Cero por una semanaComo puedes ver, la cadena original se divide en dos partes, separadas por el salto de línea (\n), y ahora cada línea se encuentra como un elemento en la lista.
¿Qué pasa si quiero mantener los saltos de línea?
Si lo que necesitas es mantener los saltos de línea por alguna razón, solo tienes que establecer el parámetro keeplinebreaks como True. Así quedaría como:
txt = "Gracias por la música\nBienvenidos a la jungla"
resultado = txt.splitlines(True)
print(resultado)
Salida:
['Gracias por la música\n', 'Bienvenidos a la jungla']
Como puedes ver, el salto de línea ahora se conserva al final de cada elemento de la lista.
¿Cuándo puedes usar str.splitlines()?
El uso de str.splitlines() es recomendado casos como:
- Lectura de archivos: Si estás leyendo un archivo de texto línea por línea, puedes usar splitlines() para separar todo el contenido del archivo.
- Análisis de datos multilinea: Cuando tienes texto con saltos de línea y necesitas procesarlo o dividirlo en bloques más pequeños.
- Procesamiento de entrada de usuario: Si los usuarios introducen texto con saltos de línea y necesitas procesar cada línea de forma independiente.
Veamos un ejemplo con lectura de archivo: Si estuvieras trabajando con un archivo y quisieras leer su contenido, puedes usar str.splitlines() de esta manera:
with open("archivo.txt", "r") as archivo:
contenido = archivo.read()
lineas = contenido.splitlines()
for linea in lineas:
print(linea)
En este ejemplo el contenido del archivo se divide en una lista de líneas, y luego las imprimes una por una.
¿Qué diferencias existen con otros métodos de separación de cadenas?
Aunque str.splitlines() es muy fácil de usar, es importante conocer las diferencias con otros métodos de división de cadenas como str.split() y str.partition(). Algunas de sus diferencias radican en:
Método | Descripción | Ejemplo de uso | Diferencia clave |
---|---|---|---|
str.splitlines() | Divide por saltos de línea. | cadena.splitlines() | Ideal para texto multilinea. |
str.split() | Divide por cualquier delimitador (por defecto, espacios). | cadena.split(" ") | No se limita a saltos de línea. |
str.partition() | Divide en tres partes en la primera aparición del delimitador. | cadena.partition(" ") | Divide solo en tres partes. |
Si quieres seguir aprendiendo sobre programación y trucos sobre Python, no dudes en inscribirte a nuestro bootcamp en programación inicial, una alternativa a la formación profesional mucho más rápida y con la que podrás salir al campo laboral fácilmente. ¡No dudes ahora en unirte a nuestro curso y sigue construyendo tu camino hacia el éxito!