详解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编写web API的教程
Apr 30 Python
Python实现删除文件但保留指定文件
Jun 21 Python
Python安装第三方库的3种方法
Jun 21 Python
Python找出list中最常出现元素的方法
Jun 14 Python
python3.6.3+opencv3.3.0实现动态人脸捕获
May 25 Python
pycharm 实现显示project 选项卡的方法
Jan 17 Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
Aug 09 Python
Python 实现自动导入缺失的库
Oct 29 Python
Python with标签使用方法解析
Jan 17 Python
Python 代码调试技巧示例代码
Aug 11 Python
python爬虫爬取网页数据并解析数据
Sep 18 Python
mac系统下安装pycharm、永久激活、中文汉化详细教程
Nov 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实现登陆验证码(类似条行码状)
2006/10/09 PHP
第六章 php目录与文件操作
2011/12/30 PHP
php中如何同时使用session和cookie来保存用户登录信息
2013/07/05 PHP
一漂亮的PHP图片验证码实例
2014/03/21 PHP
PHP基于自定义函数生成笛卡尔积的方法示例
2017/09/30 PHP
仅img元素创建后不添加到文档中会执行onload事件的解决方法
2011/07/31 Javascript
网页编辑器ckeditor和ckfinder配置步骤分享
2012/05/24 Javascript
运算符&&的三个不同层次
2013/04/07 Javascript
如何在父窗口中得知window.open()出的子窗口关闭事件
2013/10/15 Javascript
JavaScript将Web页面内容导出到Word及Excel的方法
2015/02/13 Javascript
javascript中undefined与null的区别
2015/08/16 Javascript
JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)
2015/10/10 Javascript
整理JavaScript创建对象的八种方法
2015/11/03 Javascript
Jquery实现的简单轮播效果【附实例】
2016/04/19 Javascript
原生js实现ajax方法(超简单)
2016/09/20 Javascript
详解使用fetch发送post请求时的参数处理
2017/04/05 Javascript
seajs中模块依赖的加载处理实例分析
2017/10/10 Javascript
分析JavaScript数组操作难点
2017/12/18 Javascript
Angular实现的自定义模糊查询、排序及三角箭头标注功能示例
2017/12/28 Javascript
[02:36]DOTA2上海特锦赛 回忆电竞生涯的重要瞬间
2016/03/25 DOTA
Python检测一个对象是否为字符串类的方法
2015/05/21 Python
Python实现文件复制删除
2016/04/19 Python
Python爬虫实例扒取2345天气预报
2018/03/04 Python
python爬取微信公众号文章的方法
2019/02/26 Python
用python进行视频剪辑
2020/11/02 Python
10个很棒的 CSS3 开发工具 推荐
2011/05/16 HTML / CSS
HTML5自定义属性前缀data-及dataset的使用方法(html5 新特性)
2017/08/24 HTML / CSS
南非最受欢迎的时尚品牌:MRP
2016/09/18 全球购物
汉森冲浪板:Hansen Surfboards
2018/05/19 全球购物
采购部部长岗位职责
2014/02/06 职场文书
淮海战役观后感
2015/06/11 职场文书
2016春季田径运动会广播稿
2015/12/21 职场文书
JavaScript实现贪吃蛇游戏
2021/06/16 Javascript
使用@Value值注入及配置文件组件扫描
2021/07/09 Java/Android
SpringDataJPA实体类关系映射配置方式
2021/12/06 Java/Android
postgreSQL数据库基础知识介绍
2022/04/12 PostgreSQL