A tu propio ritmo

Explora nuestra extensa colección de cursos diseñados para ayudarte a dominar varios temas y habilidades. Ya seas un principiante o un aprendiz avanzado, aquí hay algo para todos.

Bootcamp

Aprende en vivo

Únete a nosotros en nuestros talleres gratuitos, webinars y otros eventos para aprender más sobre nuestros programas y comenzar tu camino para convertirte en desarrollador.

Próximos eventos en vivo

Catálogo de contenidos

Para los geeks autodidactas, este es nuestro extenso catálogo de contenido con todos los materiales y tutoriales que hemos desarrollado hasta el día de hoy.

Tiene sentido comenzar a aprender leyendo y viendo videos sobre los fundamentos y cómo funcionan las cosas.

Buscar en lecciones


IngresarEmpezar
← Volver a Cómo hacerlo
Editar en Github

Cómo concatenar cadenas en Python

Escrito por:

La concatenación de cadenas es el proceso de unir dos cadenas en una sola. La forma más sencilla de concatenar cadenas en Python es utilizando el método format string. Este método consiste en añadir la letra "f" antes de las comillas de la cadena, como en f"Hola mundo", y luego puedes concatenar variables colocándolas entre llaves {} dentro de las comillas. Aquí tienes un ejemplo:

1name = "4Geeks" 2 3print(f"Hello from {name}!") 4#Output -> Hello from 4Geeks!

En el ejemplo anterior, estamos utilizando la variable name para concatenarla a la cadena.

La concatenación de cadenas es una acción común que nosotros, como desarrolladores de software, debemos realizar en casi cualquier proyecto. Hay muchas maneras de concatenar cadenas; puedes usar la que mejor se adapte a tus necesidades.

Concatenar cadenas en Python usando el operador +

La forma más familiar de concatenar cadenas para la mayoría de las personas es utilizando el operador +. Mira este ejemplo que explica cómo funciona:

1name = "Alex" 2 3print("Hello my name is " + name + " and I'm a developer") 4#Output-> Hello my name is Alex and I'm a developer

Nota el espacio después de is y antes de and. Si no los hubiéramos agregado, la salida habría sido algo como esto: Hello my name isAlexand I'm a developer. Recuerda agregar los espacios cuando sea necesario.

Concatenar cadenas usando el operador +=

También podemos usar el operador += para concatenar cadenas. Es bastante similar a usar el operador +, pero en este caso modificaremos el valor de la cadena original.

1#Concatenate using the += operator 2fullname = "Alex " 3lastname = "Smith" 4fullname += lastname 5print(fullname) 6#Output-> Alex Smith

Nota que hay un espacio dentro de la cadena, de lo contrario, el valor de fullname sería "AlexSmith". Recuerda agregar los espacios cuando sea necesario.

Concatenar un valor entero o flotante con texto usando str()

Los números y las cadenas son tipos de datos completamente diferentes. Cuando queramos agregar un número (int, float, etc.) a una cadena, necesitaremos usar str() para convertir ese número en una cadena.

1# Concatenate using the + Operator with numbers 2geeks_word = "Geeks" 3geeks_number = 4 4print("At " + str(geeks_number) + geeks_word + " Academy we love Python! <3") 5#Output-> At 4Geeks Academy we love python! <3

Como se mencionó anteriormente, estamos agregando espacios para que el render respete las reglas de escritura.

Si no convirtieramos la variable int1 a cadena, recibiríamos el siguiente error, indicando que estamos intentando concatenar un entero con una cadena.

1TypeError: can only concatenate str (not "int") to str

Concatenar cadenas en Python usando f-Strings

Las f-Strings de Python (literales de cadenas formateadas) hacen que escribir cadenas sea más rápido y mucho más fácil. Esta opción fue introducida en Python 3.6, por lo que debes tener en cuenta la compatibilidad hacia atrás al utilizarla.

Este es uno de los métodos más utilizados entre los desarrolladores experimentados debido a la facilidad de insertar variables dentro de los corchetes. La(s) variable(s) se evaluarán y se mostrará una representación en cadena.

Implementación:

1#Concatenate using the f-Strings method 2geek_word = "Geeks" 3print(f"Showing the geek_word variable: {geek_word} using f-String") 4#Output-> Showing the geek_word variable: Geeks using f-String

Al utilizar la concatenación con f-Strings, no necesitamos convertir los números (Int, Float, etc.) a cadena para poder mostrarlos dentro de los corchetes.

1#Concatenate using the f-Strings method with numbers 2geek_word = "Geeks" 3geek_number = 4 4print(f"At {geek_number}{geek_word} Academy we love Python! <3") 5#Output-> At 4Geeks Academy we love python! <3

Concatenar usando .format()

Otra forma de concatenar cadenas en Python es utilizando el método format(). Funciona de manera similar a los f-Strings, ya que ambos utilizan corchetes {} para insertar variables, pero está disponible desde la versión 2.7.

Este método tampoco necesita convertir los valores numéricos en cadenas.

1#Concatenate using the .format() method 2geek_word = "Geeks" 3geek_number = 4 4text = "{}{} Academy".format(geek_number, geek_word) 5print(text) 6#Output-> 4GeeksAcademy

Como puedes ver, el resultado devuelto es el esperado, pero sin espacio entre las palabras.

Concatenar usando el operador %

El operador % es una forma más antigua de concatenar cadenas que funciona de manera muy similar al método .format(). Usamos %s como marcadores de posición para diferentes valores, como lo hicimos con los corchetes en los ejemplos anteriores.

1#Concatenate using the % Operator 2geek_word = "Geeks" 3geek_number = 4 4text = "%s%s Academy" % (geek_number, geek_word) 5print(text) 6#Output-> 4Geeks Academy

Concatenar usando el operador *

El uso del operador * no es una concatenación de la manera en que hemos estado haciendo hasta ahora. El operador * se utiliza para la multiplicación y eso es exactamente lo que hace: multiplica la cadena por la cantidad indicada.

1#Concatenate using the * Operator 2str1 = "4Geeks Academy " 3print(str1*3) 4#Output-> 4Geeks Academy 4Geeks Academy 4Geeks Academy

Si formateas correctamente la variable cadena (dejando un espacio al final de la oración/palabra), esta es la mejor manera de repetir una línea de texto tantas veces como necesites.