Python 中的\r 字符

今天遇到了\r,然后就比较懵了,这里简单记录一下\r字符在Python中的应用。

\r:将光标回退到开始位置
先来看一个示例代码:

import time

text = "Hello\rWorld!"
for i in text:
    time.sleep(0.5)
    print(i, end="")

实现结果如下:
Python 中的\r 字符_第1张图片
我们可以看到最终显示的输出结果为World,然而实际上最开始Hello已经被输出了,只不过当我们使用了\r字符后,光标回到了最开始的位置,删除了开始的输出,最后只显示出了World字符串。
利用这个特性,我们可以实现在编译器窗口只输出一行结果的显示效果。只要在每次调用print函数前加上这个字符即可。示例如:

string = ["hhhh", "cow", "boy"]
for text in string:
    time.sleep(1)
    print('\r' + text, end="")

实现结果如下:
Python 中的\r 字符_第2张图片
我们可以看到这里我们实现了单次输出列表中的字符串,并且每次输出字符串时会删除掉之前已经打印的字符串。

其次,我们可以用这个性质来实现动态删除字符串的过程,代码如下:

import time

string = "I like u very much"
length = len(string)
for i in range(length):
    time.sleep(0.3)
    print("\r" + string[:length - 1 - i] + "|", end="")

实现结果如下:
Python 中的\r 字符_第3张图片
那么除此之外还有没有别的应用呢?答案是肯定的,请看这篇—Python 自制简易ProgressBar(超链接点击跳转)。

码字不易,如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~

你可能感兴趣的:(Python,基础,python,list)