Artículo original: Python String split() and join() Methods – Explained with Examples
Cuando trabajas con cadenas en Python, puedes necesitar dividir una cadena en subcadenas. O puedes necesitar unir fragmentos para crear una cadena. Los métodos de cadenas split() y join() te ayudan a realizar esas tareas fácilmente.
En este tutorial aprenderás acerca de los métodos split() y join() con bastante código de ejemplo.
Como las cadenas en Python son inmutables, puedes llamar métodos en ellas sin modificar la cadena original. Comencemos.
Sintaxis del método split() en Python
Cuando necesitas dividir una cadena en subcadenas, puedes utilizar el método split().
El método split() actúa sobre una cadena y devuelve una lista de subcadenas. La sintaxis es:
<cadena>.split(sep,maxsplit)Donde:
<cadena>es cualquier cadena válida en Python.sepes el separador que quieres usar para dividir. Debe especificarse como una cadena.
Por ejemplo, si quieres dividir<cadena>cuando haya una coma, puedes establecersep = ",".
sepes un argumento opcional. Por defecto, este método divide las cadenas en espacios en blanco.maxsplites un argumento opcional que indica el número de veces que quieres dividir<cadena>.maxsplittiene un valor por defecto de-1, que divide la cadena en todas las apariciones desep
Si quieres dividir<cadena>solo cuando aparece la primer coma, puedes establecermaxsplit = 1.
Y establecer maxsplit = 1 te dejará con dos fragmentos - uno con la sección <cadena> anterior a la primera coma, y otra con la sección <cadena> posterior a la primera coma.
Cuando divides una cadena solo una vez, obtienes dos fragmentos. Cuando la divides dos veces obtienes 3 fragmentos. Cuando divides una cadena k veces, obtienes k+1 fragmentos.
▶ Tomemos algunos ejemplos para ver el método split() en acción.
Ejemplos del método split() en Python
Empecemos con my_string como se muestra a continuación:
mi_cadena = "Yo programo dos horas al día"Ahora llama el método split() en mi_cadena, sin los argumentos sep ni maxsplit.
mi_cadena.split()
Puedes ver que mi_cadena ha sido dividida en todos sus espacios y se devolvió una lista de subcadenas, como se muestra arriba.
▶ Consideremos el siguiente ejemplo. Aquí, mi-cadena tiene nombres de frutas, separados por comas.
mi_cadena = "Manzanas,Naranjas,Peras,Platanos,Bayas"Ahora dividamos mi_cadena en comas - establece sep="," o solo específica "," al llamar el método.
mi_cadena.split(",")Como se esperaba, el método split() devuelve una lista de frutas, donde cada fruta en mi_cadena es un elemento de la lista.

▶ Ahora utiliza el argumento opcional maxsplit estableciendo 2 como valor.
mi_cadena.split(",",2)
Analicemos la lista devuelta.
Observa que mi_cadena es "Manzanas, Naranjas, Peras, Platanos, Bayas" y decidimos separarlo por comas (",").
- La primera coma está después de
Manzanas, y después de la primera división tienes dos elementos,ManzanasyNaranjas,Peras,Platanos,Bayas. - La segunda coma está después de
Naranjas. Tienes 3 elementos,Manzanas,NaranjasyPeras, Platanos, Bayasdespués de la segunda división. - Hasta este punto, alcanzaste el conteo de 2 para
maxsplity no se pueden continuar haciendo divisiones. - Esa es la razón por la que la porción de la cadena después de la segunda coma está unida en un solo elemento en la lista devuelta.
Espero que hayas entendido cómo funciona el método split() y los argumentos sep y maxsplit
Sintaxis del método join() en Python
Ahora que sabes cómo dividir una cadena en subcadenas, es tiempo de aprender como utilizar el método join() para formar una cadena a partir de subcadenas.
La sintaxis del método join() es:
<sep>.join(<iterable>)Donde,
<iterable>es cualquier iterable de Python que contenga subcadenas, como una lista o una tupla, y<sep>es el separador sobre el que quieres que se unan las subcadenas.
En esencia, el métodojoin()une todos los elementos en un<iterable>usando<sep>como el separador.
▶ Es turno de los ejemplos.
Ejemplos del método join() en Python
En la sección anterior sobre el método split(), dividiste mi_cadena en una lista según las ocurrencias de comas. Llamemos a esa lista mi_lista.
Ahora formarás una cadena usando el método join() para juntar los elementos de la lista devuelta. Los elementos en mi_lista son todos nombres de frutas.
mi_lista = mi_cadena.split(",")
# mi_cadena se divide en mi_lista de la siguiente forma
['Manzanas', 'Naranjas', 'Peras', 'Platanos', 'Bayas']
? Observa que el separador para unir debe ser especificado como una cadena. Aparecerán errores de sintaxis si no lo haces, como se muestra a continuación.
,.join(mi_lista)
▶ Para unir los elementos en mi_lista usando una coma como el separador, usa "," y no ,. Esto se muestra en el fragmento de código a continuación.
", ".join(mi_lista)La línea de código de arriba une elementos en mi_lista usando una coma seguido de un espacio como separador.

Puedes especificar cualquier separador de tu elección. Esta vez utilizarás 3 guiones bajos (___) para unir los elementos en mi_lista.
"___".join(mi_lista)
Los elementos en mi_lista se unieron en una sola cadena, y fueron separados por un ___.
Y ahora tú sabes como puedes formar una cadena en Python, uniendo subcadenas utilizando el método join().
Conclusión
En este tutorial, aprendiste lo siguiente:
<cadena>.split(sep, maxsplit)divide<cadena>en las ocurrencias desep,maxsplitnúmero de veces,<sep>.join(<iterable>)une subcadenas en<iterable>usando<sep>como el separador.
Espero hayas encontrado útil este tutorial. ¡Feliz día programando!