python实现文本进度条 程序进度条 加载进度条 单行刷新功能


Posted in Python onJuly 03, 2019

python实现文本进度条 程序进度条 加载进度条 单行刷新功能,具体内容如下所示:

利用time库来替代某个程序 的进行过程,做实例,

思路是,简单打印出来程序进度

单行刷新关键是\r,

python默认是print后换行,所以加一个\r是光标回退到之前位置

import time
tm=10
print('{:-^18}'.format('开始'))
for i in range(tm+1):
  a='#'*i
  b='.'*(tm-i)
  c=(i/tm)*100
  print('\r{:^3.0f}%[{}->{}]'.format(c,a,b),end="")#记得要光标回退,这是python3的打法,python2的把最后的end=‘'改了就好
  time.sleep(0.1)#这是模拟程序进程,可将time.sleep替换成程序进程
print('{:-^18}'.format('结束'))

没有\r的效果是

--------开始--------
 0 %[->..........]
10 %[#->.........]
20 %[##->........]
30 %[###->.......]
40 %[####->......]
50 %[#####->.....]
60 %[######->....]
70 %[#######->...]
80 %[########->..]
90 %[#########->.]
100%[##########->]
--------结束--------

有\r的最终效果是

--------开始--------
100%[##########->]--------结束--------

这里最后两个重叠了,所以还要加一个换行就好了,最后一行改为、

print('\n'+'{:-^18}'.format('结束'))

ps:下面看下用python实现单行动态刷新文本进度条

TextProBar.py

import time
scale = 50
print("执行开始".center(scale // 2,"-"))
start = time.perf_counter()
for i in range(scale + 1):
  a = "*" * i
  b = "." * (scale - i)
  c = (i / scale) * 100
  dur = time.perf_counter() - start
  print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end = "")
  time.sleep(0.1)
print("\n"+"执行结束".center(scale // 2,"-"))

\r:可以使打印后的光标退回到之前的位置覆盖之前的字符,不过会被IDLE屏蔽。所以要用命令行`执行
(IDLE本身是编写程序的开发环境,并不是程序运行的主要环境。正常运行程序我们要么通过双击要么通过控制台,一般很少直接通过IDLE来运行的。由于IDLE被设定为开发环境,为了保证其中参数的运行效果,所以就把其中一个效果\r给屏蔽了)

总结

以上所述是小编给大家介绍的python实现文本进度条 程序进度条 加载进度条 单行刷新,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python中遍历文件的3个方法
Sep 02 Python
Python读写Json涉及到中文的处理方法
Sep 12 Python
详解python调度框架APScheduler使用
Mar 28 Python
python中闭包Closure函数作为返回值的方法示例
Dec 17 Python
Python文本处理之按行处理大文件的方法
Apr 09 Python
Python实现的质因式分解算法示例
May 03 Python
python3使用SMTP发送HTML格式邮件
Jun 19 Python
python skimage 连通性区域检测方法
Jun 21 Python
使用Python paramiko模块利用多线程实现ssh并发执行操作
Dec 05 Python
详解python 中in 的 用法
Dec 12 Python
Python中的全局变量如何理解
Jun 04 Python
教你怎么用python爬取爱奇艺热门电影
May 20 Python
Python Pandas数据结构简单介绍
Jul 03 #Python
如何通过雪花算法用Python实现一个简单的发号器
Jul 03 #Python
Python实现个人微信号自动监控告警的示例
Jul 03 #Python
python pandas模块基础学习详解
Jul 03 #Python
python将excel转换为csv的代码方法总结
Jul 03 #Python
pandas实现to_sql将DataFrame保存到数据库中
Jul 03 #Python
python实现控制COM口的示例
Jul 03 #Python
You might like
php INI配置文件的解析实现分析
2011/01/04 PHP
PHP判断函数是否被定义的方法
2019/06/21 PHP
THINKPHP5.1 Config的配置与获取详解
2020/06/08 PHP
在模板页面的js使用办法
2010/04/01 Javascript
jQuery实现切换页面布局使用介绍
2011/10/09 Javascript
javaScript 利用闭包模拟对象的私有属性
2011/12/29 Javascript
从零学jquery之如何使用回调函数
2014/05/16 Javascript
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式
2014/06/24 Javascript
jquery简单的弹出层浮动层代码
2015/04/27 Javascript
javascript通过获取html标签属性class实现多选项卡的方法
2015/07/27 Javascript
使用js复制链接中的部分文字的方法
2015/07/30 Javascript
如何利用JS通过身份证号获取当事人的生日、年龄、性别
2016/01/22 Javascript
javascript封装addLoadEvent实现页面同时加载执行多个函数的方法
2016/07/25 Javascript
js添加千分位的实现代码(超简单)
2016/08/01 Javascript
Vue.js中数组变动的检测详解
2016/10/12 Javascript
etmvc+jQuery EasyUI+combobox多值操作实现角色授权实例
2016/11/09 Javascript
scroll事件实现监控滚动条并分页显示(zepto.js)
2016/12/18 Javascript
Mui使用jquery并且使用点击跳转新窗口的实例
2017/08/19 jQuery
JavaScript实现JSON合并操作示例【递归深度合并】
2018/09/07 Javascript
JS中实现浅拷贝和深拷贝的代码详解
2019/06/05 Javascript
使用PyCharm配合部署Python的Django框架的配置纪实
2015/11/19 Python
Python中的迭代器与生成器高级用法解析
2016/06/28 Python
Python实现重建二叉树的三种方法详解
2018/06/23 Python
python GUI库图形界面开发之PyQt5图片显示控件QPixmap详细使用方法与实例
2020/02/27 Python
基于pycharm 项目和项目文件命名规则的介绍
2021/01/15 Python
AmazeUI底部导航栏与分享按钮的示例代码
2020/08/18 HTML / CSS
私有程序集与共享程序集有什么区别
2013/04/05 面试题
成品仓管员工作职责
2013/12/29 职场文书
土地转让协议书范本
2014/04/15 职场文书
2014党员四风对照检查材料思想汇报
2014/09/17 职场文书
离婚协议书该怎么写
2014/10/04 职场文书
逃课打麻将检讨书
2014/10/05 职场文书
机关干部三严三实心得体会
2014/10/13 职场文书
2014年公务员工作总结
2014/11/18 职场文书
党员倡议书
2015/01/19 职场文书
粗暴解决CUDA out of memory的问题
2021/05/22 Python