避免打印中的虚假空间

时间:2013-01-25 11:08:51

标签: python printing

我没想到这一点,但是:

print "AAAA",
print "BBBB"

将输出:

AAAA BBBB

中间有一个额外的空间。这实际上是documented

我怎样才能避免那个虚假的空间呢?文档说:

In some cases it may be functional to write an empty string to standard output for this reason.

但我不知道该怎么做。

2 个答案:

答案 0 :(得分:4)

三个选项:

  • 不要使用两个print语句,而是连接值:

    print "AAAA" + "BBBB"
    
  • 使用sys.stdout.write()直接编写语句,而不是使用print语句

    import sys
    
    sys.stdout.write("AAAA")
    sys.stdout.write("BBBB\n")
    
  • 使用forward-compatible new print() function

    from __future__ import print_function
    
    print("AAAA", end='')
    print("BBBB")
    

答案 1 :(得分:2)

习惯使用print()函数而不是语句。它更灵活。

from __future__ import print_function

print('foo', end='')
print('bar')