详解Python实现进度条的4种方式


Posted in Python onJanuary 15, 2020

这里只列举了部分方法,其他方法或python库暂时还没使用到

1.不用库,直接打印:

代码样例:

import time
#demo1
def process_bar(percent, start_str='', end_str='', total_length=0):
 bar = ''.join(["\033[31m%s\033[0m"%' '] * int(percent * total_length)) + ''
 bar = '\r' + start_str + bar.ljust(total_length) + ' {:0>4.1f}%|'.format(percent*100) + end_str
 print(bar, end='', flush=True)
for i in range(101):
 time.sleep(0.1)
 end_str = '100%'
 process_bar(i/100, start_str='', end_str=end_str, total_length=15)
#demo2
# for i in range(0, 101, 2):
# time.sleep(0.1)
# num = i // 2
# if i == 100:
#  process = "\r[%3s%%]: |%-50s|\n" % (i, '|' * num)
# else:
#  process = "\r[%3s%%]: |%-50s|" % (i, '|' * num)
# print(process, end='', flush=True)

效果:

详解Python实现进度条的4种方式

2.不用库,直接打印:

代码样例:

import sys, time
print("正在下载......")
for i in range(11):
 if i != 10:
  sys.stdout.write("==")
 else:
  sys.stdout.write("== " + str(i*10)+"%/100%")
 sys.stdout.flush()
 time.sleep(0.2)
print("\n" + "下载完成")

注:

sys.stdout.write()方法跟print()方法的区别是 前者打印不换行,后者换行。
sys.stdout.flush()方法是立即刷新输出的内容 

效果:

详解Python实现进度条的4种方式

3.tqdm库

相关文档:点击直达

使用样例:

from time import sleep
from tqdm import tqdm
for i in tqdm(range(20)):
 sleep(0.5)

 效果:

详解Python实现进度条的4种方式                             

4.progressbar

官方文档:点击直达

安装:

pip3 install progressbar2

使用样例:

import time
from progressbar import *
progress = ProgressBar()
for i in progress(range(1000)):
 time.sleep(0.01)

效果:

详解Python实现进度条的4种方式

总结

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

Python 相关文章推荐
使用Python神器对付12306变态验证码
Jan 05 Python
Python爬虫中urllib库的进阶学习
Jan 05 Python
Python微信公众号开发平台
Jan 25 Python
tensorflow 输出权重到csv或txt的实例
Jun 14 Python
破解安装Pycharm的方法
Oct 19 Python
Python OOP类中的几种函数或方法总结
Feb 22 Python
Pycharm运行加载文本出现错误的解决方法
Jun 27 Python
PyTorch的深度学习入门之PyTorch安装和配置
Jun 27 Python
详解Python 4.0 预计推出的新功能
Jul 26 Python
通过 Python 和 OpenCV 实现目标数量监控
Jan 05 Python
mac使用python识别图形验证码功能
Jan 10 Python
python数据分析:关键字提取方式
Feb 24 Python
pytorch常见的Tensor类型详解
Jan 15 #Python
pytorch 常用线性函数详解
Jan 15 #Python
python3.8下载及安装步骤详解
Jan 15 #Python
浅谈pytorch、cuda、python的版本对齐问题
Jan 15 #Python
pytorch模型预测结果与ndarray互转方式
Jan 15 #Python
pytorch实现对输入超过三通道的数据进行训练
Jan 15 #Python
Pytorch 定义MyDatasets实现多通道分别输入不同数据方式
Jan 15 #Python
You might like
让PHP开发者事半功倍的十大技巧小结
2010/04/20 PHP
memcached 和 mysql 主从环境下php开发代码详解
2010/05/16 PHP
利用php+mysql来做一个功能强大的在线计算器
2010/10/12 PHP
跟我学Laravel之视图 & Response
2014/10/15 PHP
浅析Yii2中GridView常见操作
2016/04/22 PHP
Laravel框架实现的rbac权限管理操作示例
2019/01/16 PHP
Domino中运用jQuery读取视图内容的方法
2009/10/21 Javascript
SwfUpload在IE10上不出现上传按钮的解决方法
2013/06/25 Javascript
Js制作简单弹出层DIV在页面居中 中间显示遮罩的具体方法
2013/08/08 Javascript
网站404页面3秒后跳到首页的实例代码
2013/08/16 Javascript
Jquery中request和request.form和request.querystring的区别
2015/11/26 Javascript
jQuery实现的文字hover颜色渐变效果实例
2016/02/20 Javascript
JS+CSS实现鼠标经过弹出一个DIV框完整实例(带缓冲动画渐变效果)
2016/03/25 Javascript
JQuery 的跨域方法推荐_可跨任何网站
2016/05/18 Javascript
Javascript之面向对象--接口
2016/12/02 Javascript
jQuery延迟执行的实现方法
2016/12/21 Javascript
JavaScript设计模式之单例模式详解
2017/06/09 Javascript
js 将线性数据转为树形的示例代码
2019/05/28 Javascript
JavaScript 实现继承的几种方式
2021/02/19 Javascript
[52:12]FNATIC vs Infamous 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
Python单例模式实例分析
2015/01/14 Python
Python利用带权重随机数解决抽奖和游戏爆装备问题
2016/06/16 Python
python通过微信发送邮件实现电脑关机
2018/06/20 Python
详解python的argpare和click模块小结
2019/03/31 Python
python 爬虫百度地图的信息界面的实现方法
2019/10/27 Python
如何完美的建立一个python项目
2020/10/09 Python
Sublime Text3最新激活注册码分享适用2020最新版 亲测可用
2020/11/12 Python
HTML5实现页面切换激活的PageVisibility API使用初探
2016/05/13 HTML / CSS
详解移动端html5页面长按实现高亮全选文本内容的兼容解决方案
2016/12/03 HTML / CSS
优瑞自动咖啡机官网:Jura
2018/09/29 全球购物
电子商务专业应届毕业生求职信
2014/06/21 职场文书
2014党的群众路线教育实践活动总结材料
2014/10/31 职场文书
2015年青年志愿者协会工作总结
2015/04/27 职场文书
勇敢的心观后感
2015/06/09 职场文书
Python list去重且保持原顺序不变的方法
2021/04/03 Python
Golang之sync.Pool使用详解
2021/05/06 Golang