¿Cómo añado una cadena a otra en Python?
Quiero una forma eficiente de añadir una cadena a otra en Python, que no sea la siguiente.
var1 = "foo"
var2 = "bar"
var3 = var1 + var2
¿Hay algún buen método incorporado para usar?
570
3
No optimice prematuramente. Si no tiene ninguna razón para creer que hay un cuello de botella de velocidad causado por las concatenaciones de cadenas, entonces siga con
+
y+=
:Dicho esto, si quieres hacer algo como el StringBuilder de Java, el lenguaje canónico de Python es añadir elementos a una lista y luego usar
str.join
para concatenarlos todos al final:Eso une str1 y str2 con un espacio como separadores. También puede hacer
"".join(str1, str2, ...)
.str.join()
toma un iterable, por lo que tendría que poner las cadenas en una lista o una tupla.Esto es lo más eficiente que se puede hacer con un método incorporado.
Si necesitas hacer muchas operaciones de adición para construir una cadena grande, puedes usar StringIO o cStringIO. La interfaz es como un archivo, es decir, usted
escribe
para añadir texto a él.Si sólo vas a añadir dos cadenas, usa
+
.