虛假的空間,我沒有想到這一點,但是:避免在打印
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.
但我不知道該怎麼做。
虛假的空間,我沒有想到這一點,但是:避免在打印
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.
但我不知道該怎麼做。
三個選項:
不要使用兩個打印語句,但串連值:
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")
習慣用print()
函數代替語句。它更靈活。
from __future__ import print_function
print('foo', end='')
print('bar')
這並不意味着任何一個模塊中導入,對於這種情況下,將要求所有'print'語句雖然 –
感謝修改!所有這三個對我來說都是不好的選擇:)但我想沒有什麼好的選擇。我期待'print'語句的一些標誌(類似於最後的''''),但是我看到沒有辦法告訴print「不要放置空格」。 – dangonfast
@gonvaled:這是Python 3切換到print()函數的原因之一;允許您實際改變默認值。添加'from __future__'導入以幫助從2到3的轉換。 –