回车在Eclipse和命令提示符中具有不同的行为

时间:2017-03-25 04:09:47

标签: python eclipse carriage-return

当我在Windows命令提示符或Linux终端中运行以下python 3代码时:

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。

1 个答案:

答案 0 :(得分:0)

听起来Eclipse试图提供帮助并将\ r \ n转换为\ r \ n。来自像Eclipse这样在多个平台上运行的应用程序就不足为奇了。

一种可能的解决方法是发送大量退格而不是单个\ r。 (是的,这很丑陋,不方便,但它可能会完成工作。)一般来说,覆盖控制台输出是一个不确定的命题,你的结果将根据具体情况而有所不同。