当我在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。
发布于 2017-03-25 12:19:47
这听起来像是Eclipse试图提供帮助,并将\r转换为\r\n。这对于像Eclipse这样在多个平台上运行的应用程序来说并不令人惊讶。
一种可能的解决方法是发送许多退格符,而不是一个\r退格符。(是的,这很难看,也不方便,但它可能会完成工作。)一般来说,覆盖控制台输出是一个不确定的命题,您的结果将根据上下文的不同而有所不同。
https://stackoverflow.com/questions/43012417
复制相似问题