在python中替换控制台中的多行

时间:2015-03-17 22:23:49

标签: python replace console

我正在用python编写程序,我想用新文本替换控制台中的多行。

例如,如果我在控制台上打印了3个句子:

print("Hello World!")
print("How are you!")
print("What's going on?")

每个on在不同的行上(因此有一个\n)。

如何在控制台中显示时替换所有这些文本?由于\r

,在这种情况下,我无法\n

2 个答案:

答案 0 :(得分:0)

一个简单的解决方法是简单地更改结束分隔符以打印字符串。您可以指定打印函数如何使用end参数

分隔调用
print("hello world!", end="")
print("\rhello world again!")

在这种情况下,我们将分隔符设置为"",这没什么。因此,打印下一个字符串从同一行开始,因此可以使用\r。编译可以在一行上显示hello world again!

答案 1 :(得分:0)

这是一篇很老的帖子,但我偶然发现了它,并制定了一个解决方案。添加了一个计时器,因为否则打印语句互相掩埋,你只能读取最后一个。我在python 2.7:

import os
import time

os.system("printf 'Hello World!'")
time.sleep(1)
os.system("printf '\rHow are you?!'")
time.sleep(1.5)
os.system("printf '\rWhats going on?'")
os.system("echo ")