我可以用这种方式在python中使用print语句嵌入变量
i=10
print "Value is %s" % (i)
输出
Value is 10
但是这样做
i=10
sys.stdout.write ("Value is %s") % (i)
给我以下错误
TypeError: unsupported operand type(s) for %: 'NoneType' and 'int'
我可以使用sys.stdout.write而不是print来嵌入变量吗?
答案 0 :(得分:16)
你的括号错了。应该是
i=10
sys.stdout.write("Value is %s" % i)
%
运算符将字符串和元组(或单个对象)作为参数。您尝试将运算符应用于sys.stdout.write()
的返回值,即无。在将字符串传递给sys.stdout.write()
之前,您需要将其应用于字符串。