在Python中使用sys.stdout.write嵌入变量

在Python中使用sys.stdout.write嵌入变量,python,python-2.x,Python,Python 2.x,我可以用这种方式在python中使用print语句嵌入变量 i=10 print "Value is %s" % (i) 输出 但是这样做 i=10 sys.stdout.write ("Value is %s") % (i) 给我以下的错误 我可以用sys.stdout.write而不是print来嵌入变量吗?括号错了。应该是 i=10 sys.stdout.write("Value is %s" % i) %运算符将字符串和元组(或单个对象)作为参数。您试图将运算符应用于sys.std

我可以用这种方式在python中使用print语句嵌入变量

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

但是这样做

i=10
sys.stdout.write ("Value is %s") % (i)
给我以下的错误


我可以用sys.stdout.write而不是print来嵌入变量吗?

括号错了。应该是

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

%
运算符将字符串和元组(或单个对象)作为参数。您试图将运算符应用于
sys.stdout.write()
的返回值,该值为无。在将字符串传递到
sys.stdout.write()

之前,您需要将其应用于字符串,因此出现错误并不奇怪,因为语法非常错误。@S.Lott这个问题现在几乎没有用了。我不能删除它,因为它有答案。不是完全没用——有可能其他人也有相同的语法问题。
TypeError: unsupported operand type(s) for %: 'NoneType' and 'int'
i=10
sys.stdout.write("Value is %s" % i)