繁体   English   中英

使用 \\r 的覆盖方法在 python 3 [PyCharm] 中不起作用

[英]The overwrite method using \r is not working in python 3 [PyCharm]

覆盖一行的方法以前不再起作用,支持它在一行上打印的python 2:

例如,而不是:

1% 2% 3% 4%

该行只会更新:

在同一条线上,1% 将变成 2%

我尝试了多种 \\r 方法都没有成功:(我在 linux 上运行 pycharm)

print('\r', " we've done " + str(trying) + " try so far ")
print( " we've done " + str(trying) + " try so far ","\r")
print( " we've done " + str(trying) + " try so far ",end="\r")

然后我尝试了最后一个解决方案,因为有人建议它是正确的:

import time

y = 0
for i in range(100):
    y += 12
    print("we've done " + str(y) + " try so far", end="\r")
    time.sleep(3)

但结果是什么都没有打印出来。 没有一条线。

这是 PyCharm 特定的问题。 它不会将\\r解释为回车。 是针对这个问题提出的。 如果您尝试在控制台中运行它,您会看到最后一个

print( " we've done " + str(trying) + " try so far ",end="\r")

将工作。

经过多次测试多种解决方案,我仍然没有找到在 Pycharm ide 中清除一行的解决方案。 我们可以得出结论,我们不能或者是否有使用图书馆的 python 解决方案?

我有时使用https://github.com/tqdm/tqdm以某种方式能够覆盖 pycharm 中的行,但我不知道如何。

结尾应该是空的。 默认为“\\n”

print(" \r we've done " + str(trying) + " try so far " , end="")
print(" \r we've done " + str(trying) + " try so far ",end="")
print(" \r we've done " + str(trying) + " try so far ",end="")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM