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映射列表实例分析
Jan 26 Python
Python求解平方根的方法
Mar 11 Python
python使用Pycharm创建一个Django项目
Mar 05 Python
python操作小程序云数据库实现简单的增删改查功能
Jun 06 Python
Pycharm 文件更改目录后,执行路径未更新的解决方法
Jul 19 Python
python getpass实现密文实例详解
Sep 24 Python
python 爬取马蜂窝景点翻页文字评论的实现
Jan 20 Python
Tensorflow:转置函数 transpose的使用详解
Feb 11 Python
Python爬虫与反爬虫大战
Jul 30 Python
如何基于python实现年会抽奖工具
Oct 20 Python
Python 使用SFTP和FTP实现对服务器的文件下载功能
Dec 17 Python
利用Python脚本写端口扫描器socket,python-nmap
Jul 23 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
上海永华YH-R296(华普R-96)12波段立体声收音机的分析和打理
2021/03/02 无线电
php HandlerSocket的使用
2011/05/02 PHP
用来解析.htgroup文件的PHP类
2012/09/05 PHP
php实现批量下载百度云盘文件例子分享
2014/04/10 PHP
php数组合并与拆分实例分析
2015/06/12 PHP
如何实现php图片等比例缩放
2015/07/28 PHP
PHP判断上传文件类型的解决办法
2015/10/20 PHP
PHP访问数据库集群的方法小结
2016/03/14 PHP
老生常谈PHP面向对象之注册表模式
2017/05/26 PHP
用js来刷新当前页面保留参数的具体实现
2013/12/23 Javascript
分享我的jquery实现下拉菜单心的
2015/11/29 Javascript
jsp 网站引入外部css或者js失效问题解决
2016/10/31 Javascript
纯JS代码实现隔行变色鼠标移入高亮
2016/11/23 Javascript
vuejs如何配置less
2017/04/25 Javascript
vue与TypeScript集成配置最简教程(推荐)
2017/10/17 Javascript
详谈commonjs模块与es6模块的区别
2017/10/18 Javascript
vue的传参方式汇总和router使用技巧
2018/05/22 Javascript
详解Vue+ElementUI从零开始搭建自己的网站(一、环境搭建)
2019/04/30 Javascript
Vue实现搜索结果高亮显示关键字
2019/05/28 Javascript
在vue中根据光标的显示与消失实现下拉列表
2019/09/29 Javascript
Vue使用axios引起的后台session不同操作
2020/08/14 Javascript
基于JavaScript实现轮播图效果
2021/01/02 Javascript
python 参数列表中的self 显式不等于冗余
2008/12/01 Python
将Django使用的数据库从MySQL迁移到PostgreSQL的教程
2015/04/11 Python
Python fileinput模块使用实例
2015/05/28 Python
Python实现矩阵转置的方法分析
2017/11/24 Python
python遍历文件夹,指定遍历深度与忽略目录的方法
2018/07/11 Python
解决python打不开文件(文件不存在)的问题
2019/02/18 Python
Python分析彩票记录并预测中奖号码过程详解
2019/07/09 Python
python3中rank函数的用法
2019/11/27 Python
Django DRF路由与扩展功能的实现
2020/06/03 Python
接口自动化多层嵌套json数据处理代码实例
2020/11/20 Python
手工制作的意大利皮革运动鞋:KOIO
2020/01/05 全球购物
使用react+redux实现计数器功能及遇到问题
2021/06/02 Javascript
Java 数据结构七大排序使用分析
2022/04/02 Java/Android
CSS使用SVG实现动态分布的圆环发散路径动画
2022/12/24 HTML / CSS