¿Qué es str.rsplit() y qué función cumple en Python?

| Última modificación: 2 de diciembre de 2024 | Tiempo de Lectura: 2 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Dividir cadenas en Python es una tarea fácil, no obstante, muchos no saben que puedes dividirla comenzando desde el final. ¿Quieres saber cómo? Pues bien, con la opción str.rsplit() puedes realizar este proceso. En este artículo te explicaremos qué es y cómo funciona en el lenguaje Python.

str.rsplit()

¿Qué es str.rsplit()?

El método str.rsplit() divide una cadena en una lista, pero comienza desde el lado derecho, es decir, desde el final. Esto hace que sea un método idóneo cuando necesitas controlar cuántas divisiones se realizan desde el final de la cadena.

Veamos su sintaxis:

string.rsplit(separator, maxsplit)

Los parámetros a seguir son:

  • separator, que define el carácter o cadena que actúa como delimitador. Si no se especifica, usa espacios en blanco como separador.
  • maxsplit que determina el número máximo de divisiones que se realizarán. El valor por defecto es -1, lo que significa dividir en todas las apariciones del delimitador.

    El retorno consiste en una lista con los elementos resultantes de la división.

    ¿Cómo funciona str.rsplit()?

    Puedes hacer que str.rsplit funcione para diferentes situaciones, por ejemplo:

    • Dividir una cadena básica
    txt = "manzana, plátano, cereza"
    result = txt.rsplit(", ", 1)
    print(result) # Salida: ['manzana, plátano', 'cereza']

    🔴 ¿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 semana

    En este caso str.rsplit() realiza una sola división desde el final, gracias al parámetro maxsplit=1.

    • Uso predeterminado (sin parámetros)
    txt = "Python es increíble"
    result = txt.rsplit()
    print(result) # Salida: ['Python', 'es', 'increíble']

    Aquí, str.rsplit() funciona como str.split(), ya que no se especifica maxsplit.

    • Separador personalizado
    url = "https://www.keepcoding.io/bootcamp"
    parts = url.rsplit("/", 1)
    print(parts) # Salida: ['https://www.keepcoding.io', 'bootcamp']

    Usar un separador como “/” y limitar las divisiones a una ayuda a extraer solo la última parte de una URL.

    str.split() y str.rsplit(): ¿cuáles son sus diferencias?

    Pese a que ambos ambos métodos dividen cadenas, la diferencia radica en la dirección desde la que comienzan las divisiones:

    MétodoDirección de divisiónEjemplo prácticoResultado esperado
    splitDesde el inicio"a b c".split(" ", 1)['a', 'b c']
    rsplitDesde el final"a b c".rsplit(" ", 1)['a b', 'c']

    ¿En qué contexto aplicar str.rsplit?

    • Procesamiento de rutas o URLs: Es común usar str.rsplit() para obtener nombres de archivos o directorios desde una ruta:
    path = "/home/user/documents/file.txt"
    file_name = path.rsplit("/", 1)[-1]
    print(file_name) # Salida: "file.txt"
    • Manipulación de texto delimitado: Cuando trabajas con datos delimitados, str.rsplit() te permite extraer las últimas secciones sin alterar el resto:
    data = "id,name,age,city"
    last_field = data.rsplit(",", 1)[-1]
    print(last_field) # Salida: "city"
    • Análisis de logs o textos largos: En archivos de registro, puedes dividir una línea desde el final para obtener datos relevantes rápidamente:
    log = "2024-12-01 12:34:56 INFO: User login successful"
    info = log.rsplit(" ", 1)
    print(info) # Salida: ['2024-12-01 12:34:56 INFO:', 'User login successful']

    Aprende a manejar fragmentos de código interesante e inicia tu caminoe n el mundo del desarrollo de software por medio del bootcamp de inicio en la programación, con el cual te instruirás de la manera adecuada e idónea para incursionar rápidamente en el mercado labora. No le des más largas a tu futuro y adquiere grandes beneficios con nosotros. ¡El éxito es aquí y ahora!

    Ramón Maldonado

    Full Stack Developer y Responsable de Formación base en KeepCoding.

    Posts más leídos

    ¡CONVOCATORIA ABIERTA!

    Aprende a Programar desde Cero

    Full Stack Jr. Bootcamp

    Apúntate y consigue uno de los perfiles más demandados con Python en solo 4 meses.