Saltar al contenido principal

Tutorial Python Concatenar Cadenas

Aprende varios métodos para concatenar cadenas en Python, con ejemplos para ilustrar cada técnica.
Actualizado 16 ene 2025  · 5 min de lectura

Concatenar significa obtener una nueva cadena que contenga las dos cadenas originales. En Python, hay varias formas de concatenar o combinar cadenas. La nueva cadena que se crea se denomina objeto cadena.

Ejemplos de concatenación de cadenas en Python

Veamos ejemplos de 5 métodos diferentes para concatenar cadenas en Python.

1. Utilizar el operador +

Para fusionar dos cadenas en un solo objeto, puedes utilizar el operador +. Este método es sencillo y se utiliza habitualmente.

En el siguiente ejemplo, se concatenan dos cadenas originales my_string1 y my_string2. Para concatenarlas, utiliza un operando más para "sumar" ambas cadenas, especificando el espacio y generando la salida, como se ve a continuación.

my_string1 = "Awesome day"
my_string2 = "for bikini"
combined_string = my_string1 + " " + my_string2
print(combined_string)

Salida:

Awesome day for bikini

2. Utilizar el método join()

El método join() es otra forma de concatenar cadenas, especialmente útil cuando tienes una lista de cadenas que concatenar.

my_strings = ["Awesome day", "for bikini"]
combined_string = " ".join(my_strings)
print(combined_string)

Salida:

Awesome day for bikini

3. Utilizar cadenas f (literales de cadena formateados)

Python 3.6 introdujo las cadenas f, una forma más legible y eficaz de concatenar cadenas e incluir variables dentro de cadenas.

my_string1 = "Awesome day"
my_string2 = "for bikini"
combined_string = f"{my_string1} {my_string2}"
print(combined_string)

Salida:

Awesome day for bikini

4. Utilizar el operador %

El operador % te permite dar formato a las cadenas y es otro método de concatenación, aunque se utiliza menos con la introducción de las cadenas f.

my_string1 = "Awesome day"
my_string2 = "for bikini"
combined_string = "%s %s" % (my_string1, my_string2)
print(combined_string)

Salida:

Awesome day for bikini

5. Utilizando el método format()

El método format() es versátil y puede utilizarse para concatenar cadenas y para dar formato a cadenas más complejas.

my_string1 = "Awesome day"
my_string2 = "for bikini"
combined_string = "{} {}".format(my_string1, my_string2)
print(combined_string)

Salida:

Awesome day for bikini

Conclusión

En Python, hay múltiples formas de concatenar cadenas, cada una con sus propias ventajas. El operador + es sencillo y directo, join() es eficaz para las listas, las cadenas f ofrecen legibilidad y rendimiento, % proporciona un enfoque clásico, y format() ofrece versatilidad. Elige el método que mejor se adapte a tus necesidades y a la compatibilidad con la versión de Python.

Para aprender más sobre la manipulación de cadenas en Python, consulta este vídeo de nuestro curso Expresiones regulares en Python.

O consulta estos tutoriales:

Preguntas frecuentes

¿Cómo concateno una lista de cadenas utilizando un separador personalizado?

Puedes utilizar el método join() con el separador que desees.

my_strings = ["Awesome day", "for bikini"]
separator = " - "
combined_string = separator.join(my_strings)
print(combined_string)  # Output: Awesome day - for bikini

¿Es posible concatenar cadenas con otros tipos de datos como enteros o flotantes directamente?

No, primero tienes que convertir los otros tipos de datos en cadenas utilizando la función str().

my_string = "The price is"
price = 50
combined_string = my_string + " " + str(price) + "$"
print(combined_string)  # Output: The price is 50$

¿Cómo concateno varias cadenas almacenadas en una lista o tupla?

Utiliza el método join() para una concatenación eficaz.

my_list = ["Awesome day", "for bikini", "at the beach"]
combined_string = " ".join(my_list)
print(combined_string)  # Output: Awesome day for bikini at the beach

¿Cómo puedo concatenar cadenas en función de determinadas condiciones?

Utiliza una sentencia if para comprobar las condiciones antes de concatenar.

condition = True
my_string1 = "Awesome day"
my_string2 = "for bikini"
if condition:
    combined_string = my_string1 + " " + my_string2
else:
    combined_string = my_string1
print(combined_string)  # Output: Awesome day for bikini

¿Existen diferencias de rendimiento entre utilizar el operador +, join(), f-cadenas, el operador % y format() para la concatenación de cadenas?

Sí, hay diferencias de rendimiento. En general, join() es el método más rápido para concatenar una lista de cadenas, especialmente en un bucle, porque minimiza la creación de cadenas intermedias. f-cadenas y format() también son eficientes y proporcionan legibilidad, mientras que el operador + y el operador % son menos eficientes para concatenaciones múltiples en bucles.

# Example of efficient concatenation in a loop using join()
strings = ["Awesome", "day", "for", "bikini"]
combined_string = " ".join(strings)
print(combined_string)  # Output: Awesome day for bikini
Temas

¡Aprende más sobre Python con estos cursos!

Certificación disponible

Curso

Introducción a las funciones en Python

3 hr
432.6K
Aprende el arte de escribir tus propias funciones en Python, así como conceptos clave como el alcance y la gestión de errores.
Ver detallesRight Arrow
Comienza el curso
Ver másRight Arrow