51Testing软件测试论坛
标题:
Python不换行打印进度条
[打印本页]
作者:
测试积点老人
时间:
2018-12-14 17:36
标题:
Python不换行打印进度条
本帖最后由 测试积点老人 于 2018-12-14 17:38 编辑
我们需要显示进度条的时候可以考虑使用print函数打印出来,比如像下面的实现方法:
# -*- coding: utf-8 -*-
import time
for i in range(1, 11):
# do something
print('*' * i)
time.sleep(1)
复制代码
进度效果:
[attach]120135[/attach]
由于print的end参数默认'\n'是会换行的,所以我们看到的进度条是换行的,效果并不是我们想要的在同一行显示。
<blockquote>def print(self, *args, sep=' ', end='\n', file=None): # known special case of print
复制代码
我们先看一下\r的含义,\r表示在本行的开头继续输出,区别与\n在下一行输出。如下面的代码所示使用\r,内容123会本行abcdefg继续输出把abc覆盖了,最终显示123defg。
[attach]120133[/attach]
利用\r的特性我们就可以在同一行显示进度条了:
[attach]120134[/attach]
作者:
Miss_love
时间:
2021-1-5 16:59
支持分享
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2