格式化:多个打印语句,不带空格
Formatting: multiple print statements without spaces
我正在尝试循环打印多个分散的内容。这是一个例子:
print str(n)+" ",
for I in range(k):
print str(l)+"+",
if l>4:
break
这给了我一个像
这样的输出
10= 1+ 2+ 3+ 4
虽然我想让它给
10=1+2+3+4
直接使用sys.stdout.write
代替print
:
from sys import stdout
stdout.write(str(n)+" ")
for I in range(k):
stdout.write(str(l)+"+")
if l>4:
break
发生这种情况的原因是 print
语句中的逗号强制在两个元素之间使用 space。您最好在循环内构建目标输出字符串,然后打印一次。如果可能,尽量避免在循环中完成任何类型的输出。
outstr = str(n)+" " # do you mean `str(n)+"="?`
for I in range(k):
outstr = outstr + str(l)+"+",
if l>4:
break
print outstr
我正在尝试循环打印多个分散的内容。这是一个例子:
print str(n)+" ",
for I in range(k):
print str(l)+"+",
if l>4:
break
这给了我一个像
这样的输出10= 1+ 2+ 3+ 4
虽然我想让它给
10=1+2+3+4
直接使用sys.stdout.write
代替print
:
from sys import stdout
stdout.write(str(n)+" ")
for I in range(k):
stdout.write(str(l)+"+")
if l>4:
break
发生这种情况的原因是 print
语句中的逗号强制在两个元素之间使用 space。您最好在循环内构建目标输出字符串,然后打印一次。如果可能,尽量避免在循环中完成任何类型的输出。
outstr = str(n)+" " # do you mean `str(n)+"="?`
for I in range(k):
outstr = outstr + str(l)+"+",
if l>4:
break
print outstr