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 相关文章推荐
深入探究Django中的Session与Cookie
Jul 30 Python
全面分析Python的优点和缺点
Feb 07 Python
在IPython中执行Python程序文件的示例
Nov 01 Python
在Python运行时动态查看进程内部信息的方法
Feb 22 Python
selenium跳过webdriver检测并模拟登录淘宝
Jun 12 Python
详细介绍Python进度条tqdm的使用
Jul 31 Python
flask框架jinja2模板与模板继承实例分析
Aug 01 Python
python for循环remove同一个list过程解析
Aug 14 Python
Python序列对象与String类型内置方法详解
Oct 22 Python
Python多线程Threading、子线程与守护线程实例详解
Mar 24 Python
keras训练浅层卷积网络并保存和加载模型实例
Jul 02 Python
K近邻法(KNN)相关知识总结以及如何用python实现
Jan 28 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+mysql分页代码详解
2008/03/27 PHP
php学习 函数 课件
2008/06/15 PHP
PHP iconv 解决utf-8和gb2312编码转换问题
2010/04/12 PHP
php接口数据加密、解密、验证签名
2015/03/12 PHP
php报错502badgateway解决方法
2019/10/11 PHP
js实现的跟随鼠标移动的时钟效果(中英文日期显示)
2011/01/17 Javascript
jquery内置验证(validate)使用方法示例(表单验证)
2013/12/04 Javascript
javascript字母大小写转换的4个函数详解
2014/05/09 Javascript
jQuery隐藏和显示效果实现
2016/04/06 Javascript
jQuery实现导航栏头部菜单项点击后变换颜色的方法
2017/07/19 jQuery
axios简单实现小程序延时loading指示
2018/07/30 Javascript
JS去除字符串最后的逗号实例分析【四种方法】
2019/06/20 Javascript
使用Vue 实现滑动验证码功能
2019/06/27 Javascript
Vuex 模块化使用详解
2019/07/31 Javascript
微信小程序批量监听输入框对按钮样式进行控制的实现代码
2019/10/12 Javascript
[00:44]TI7不朽珍藏III——军团指挥官不朽展示
2017/07/15 DOTA
python基础入门详解(文件输入/输出 内建类型 字典操作使用方法)
2013/12/08 Python
使用Python中PDB模块中的命令来调试Python代码的教程
2015/03/30 Python
Python快速从注释生成文档的方法
2016/12/26 Python
微信跳一跳小游戏python脚本
2018/01/05 Python
Python WSGI的深入理解
2018/08/01 Python
python 实现倒排索引的方法
2018/12/25 Python
python cv2在验证码识别中应用实例解析
2019/12/25 Python
python实现简单的购物程序代码实例
2020/03/03 Python
win10下opencv-python特定版本手动安装与pip自动安装教程
2020/03/05 Python
python中altair可视化库实例用法
2021/01/26 Python
CSS3 二级导航菜单的制作的示例
2018/04/02 HTML / CSS
html5中JavaScript removeChild 删除所有节点
2014/05/16 HTML / CSS
HTML5手机端弹出遮罩菜单特效代码
2016/01/27 HTML / CSS
美国汽车交易网站:Edmunds
2016/08/17 全球购物
优秀员工表扬信
2014/01/17 职场文书
幼儿园保教管理制度
2014/02/03 职场文书
群教个人对照检查材料
2014/08/20 职场文书
请学会珍惜眼前,因为人生没有下辈子!
2019/11/12 职场文书
Python学习之包与模块详解
2022/03/19 Python
mysql查询结果实现多列拼接查询
2022/04/03 MySQL