2017-03-25 19 views
1

當我運行在Windows命令提示或Linux終端以下Python 3代碼:回車在Eclipse和在命令提示不同的行爲

for i in range (10): 
    print('Step {0}'.format(i), end='\r', flush=True) 
print('everything is done', flush=True) 

的輸出是:

everything is done 

然而,當我在Eclipse中運行相同的代碼,輸出爲:

Step 0 
Step 1 
Step 2 
Step 3 
Step 4 
Step 5 
Step 6 
Step 7 
Step 8 
Step 9 
everything is done 

什麼能解釋一下嗎?我使用Eclipse Standard/SDK,版本:Kepler Release,Build id:20130614-0229。

回答

0

這聽起來像Eclipse試圖幫助和轉換\ r \ r \ n。這並不令人驚訝,它來自像Eclipse這樣的應用程序,它運行在多個平臺上。

一種可能的解決方法是發送大量後退而不是單個\ r。 (是的,這很醜陋,不方便,但它可能會完成工作。)一般來說,覆蓋控制檯輸出是一個不確定的命題,您的結果將根據上下文而有所不同。

相關問題