En python di que tienes
s = "string"
i = 0
print s+i
te dará un error para que escribas
print s+str(i)
para no obtener el error
Creo que esta es una manera bastante torpe de manejar la concatenación int y string. Incluso Java no necesita una conversión explícita a String para hacer este tipo de concatenación. ¿Hay una mejor manera de hacer este tipo de concatenación, es decir, sin una conversión explícita en Python?
python
concatenation
string-concatenation
telescopio especial
fuente
fuente
"1" + 1
,2
o"11"
y por qué?s+str(i)
, y tienes razón!Respuestas:
Formato de cadena moderno:
fuente
str.format
método se introdujo en Python 3.0 y se exportó a Python 2.6 ySin formato de cadena:
fuente
print()
función v3 y establezca algunos de sus parámetros.Formateo de cadenas, utilizando el
.format()
método de nuevo estilo (con los valores predeterminados .format () proporciona):O el más antiguo, pero "todavía se
%
queda ", con formato:En los dos ejemplos anteriores no hay espacio entre los dos elementos concatenados. Si se necesita espacio, simplemente se puede agregar en las cadenas de formato.
Estos proporcionan un gran control y flexibilidad sobre cómo concatenar elementos, el espacio entre ellos, etc. Para obtener detalles sobre las especificaciones de formato, consulte esto .
fuente
Python es un lenguaje interesante en el sentido de que, aunque generalmente hay una (o dos) formas "obvias" de realizar cualquier tarea, aún existe flexibilidad.
El fragmento de código anterior está escrito en sintaxis de Python3, pero los paréntesis después de la impresión siempre se permitieron (opcional) hasta que la versión 3 los hizo obligatorios.
Espero que esto ayude.
Caitlin
fuente
El método format () se puede utilizar para concatenar cadenas y enteros
fuente
si solo quieres imprimir puedes hacer esto:
fuente
en Python 3.6 y posteriores, puede formatearlo así:
o solo:
fuente