valor salto print numeros linea letras imprimir funcion entrada declarar datos convertir como capturar python whitespace python-2.x

python - salto - Cómo imprimir variables sin espacios entre valores



int input python (6)

Es la coma la que proporciona ese espacio en blanco adicional.

Una forma es usar el método de cadena % :

print ''Value is "%d"'' % (value)

que es como printf en C, lo que le permite incorporar y formatear los elementos después de % mediante el uso de especificadores de formato en la propia cadena. Otro ejemplo, que muestra el uso de múltiples valores:

print ''%s is %3d.%d'' % (''pi'', 3, 14159)

Para lo que vale, Python 3 mejora enormemente la situación al permitirle especificar el separador y el terminador para una sola llamada de print :

>>> print(1,2,3,4,5) 1 2 3 4 5 >>> print(1,2,3,4,5,end=''<</n'') 1 2 3 4 5<< >>> print(1,2,3,4,5,sep='':'',end=''<</n'') 1:2:3:4:5<<

Esta pregunta ya tiene una respuesta aquí:

Me gustaría saber cómo eliminar espacios adicionales cuando imprimo algo.

Como cuando lo hago:

print ''Value is "'', value, ''"''

El resultado será:

Value is " 42 "

Pero yo quiero:

Value is "42"

¿Hay alguna forma de hacer esto?


No utilices print ..., si no quieres espacios. Utilice la concatenación de cadenas o el formato.

Concatenación:

print ''Value is "'' + str(value) + ''"''

Formateo:

print ''Value is "{}"''.format(value)

Este último es mucho más flexible, consulte la documentación del método str.format() y la sección Sintaxis de cadena de formato .

También encontrarás el estilo de formato % anterior:

print ''Value is "%d"'' % value print ''Value is "%d", but math.pi is %.2f'' % (value, math.pi)

pero esto no es tan flexible como el nuevo método str.format() .


Para construir sobre lo que Martjin estaba diciendo. Usaría interpolación / formateo de cadenas.

En Python 2.x, que parece ser lo que estás usando debido a la falta de paréntesis en torno a la función de impresión que haces:

print ''Value is "%d"'' % value

En Python 3.x usarías el método de formato, así que tu código se vería así.

message = ''Value is "{}"'' print(message.format(value))


Solo una respuesta fácil para el futuro que encontré fácil de usar como iniciador: similar a usar end='''' para evitar una nueva línea, puede usar sep='''' para evitar los espacios en blanco ... para esta pregunta aquí, se vería así: print(''Value is "'', value, ''"'', sep = '''')

Que pueda ayudar a alguien en el futuro.


https://docs.python.org/2/library/functions.html#print

print (* objetos, sep = '''', end = ''/ n'', archivo = sys.stdout)

Nota: Esta función normalmente no está disponible como una función incorporada, ya que la impresión del nombre se reconoce como la declaración de impresión. Para deshabilitar la declaración y usar la función print (), use esta declaración futura en la parte superior de su módulo:

de la futura importación print_function


>>> value=42 >>> print "Value is %s"%(''"''+str(value)+''"'') Value is "42"