2011-01-12 9 views
7

puedo incrustar las variables mediante la instrucción de impresión en pitón de esta maneravariables Insertar utilizando sys.stdout.write en Python

i=10 
print "Value is %s" % (i) 

salida

Value is 10 

pero haciendo esto

i=10 
sys.stdout.write ("Value is %s") % (i) 

me da los followi ng error

TypeError: unsupported operand type(s) for %: 'NoneType' and 'int' 

puedo incrustar las variables utilizando sys.stdout.write en lugar de impresión?

+2

No es sorprendente que reciba un error, ya que la sintaxis es incorrecta. –

+0

@ S.Lott La pregunta es bastante inútil ahora. No puedo borrarlo ya que tiene respuestas. – abel

+2

No es del todo inútil: existe la posibilidad de que otras personas tengan la misma pregunta de sintaxis. –

Respuesta

15

Has equivocado los paréntesis. En caso de ser

i=10 
sys.stdout.write("Value is %s" % i) 

El operador % toma una cadena y una tupla (o un solo objeto) como argumentos. Intentó aplicar el operador al valor de retorno sys.stdout.write(), que es Ninguno. Debe aplicarlo a la cadena antes de pasarla al sys.stdout.write().

Cuestiones relacionadas