Python制作运行进度条的实现效果(代码运行不无聊)


Posted in Python onFebruary 24, 2021

一、普通进度条

import sys
import time

# 普通进度条
# 在代码迭代运行中进行统计计算,并使用格式化字符串输出代码运行进度
def progress_bar():
 for i in range(1, 101): # 1-100
  print("\r", end="") # \r 表示将光标的位置回退到本行的开头位置
  print("Download progress: {} {}%".format("?" * (i // 2), i), end="")
  sys.stdout.flush()  # sys.stdout.flush()的作用就是显示地让缓冲区的内容输出。
  time.sleep(0.02)
progress_bar()

运行效果如下:

Python制作运行进度条的实现效果(代码运行不无聊)

二、带时间的进度条

import time

scale = 50

start = time.perf_counter() # 返回性能计数器的值(以秒为单位)
for i in range(scale + 1):
 progress_bar = "?" * i
 completion_ratio = (i / scale) * 100
 dur_time = time.perf_counter() - start
 print("\rDownload Process:{:^3.0f}% [{}] {:.2f}s".format(completion_ratio, progress_bar, dur_time),end = "")
 time.sleep(0.1)

运行效果如下:

Python制作运行进度条的实现效果(代码运行不无聊)

三、利用tpdm生成进度条

from time import sleep
from tqdm import tqdm
# 里面传入一个可迭代对象
for i in tqdm(range(1, 101)):
 # 模拟你的任务
 sleep(0.05)

sleep(0.5)

运行效果如下:

Python制作运行进度条的实现效果(代码运行不无聊)

四、利用progress生成进度条

import time
import progressbar

def custom_len(value):
 # These characters take up more space
 characters = {
  '进': 3,
  '度': 3,
 }

 total = 0
 for c in value:
  total += characters.get(c, 1)

 return total
bar = progressbar.ProgressBar(
 widgets=[
  '进度: ',
  progressbar.Bar(marker='#', left='|', right='|'),
  ' ',
  progressbar.Counter(format='%(value)02d/%(max_value)d'),
 ],
 len_func=custom_len,
)
for i in bar(range(100)):
 time.sleep(0.05)

运行效果如下:

Python制作运行进度条的实现效果(代码运行不无聊)

到此这篇关于Python制作运行进度条的实现效果(代码运行不无聊)的文章就介绍到这了,更多相关Python运行进度条 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中实现参数类型检查的简单方法
Apr 21 Python
python结合API实现即时天气信息
Jan 19 Python
利用Python爬取可用的代理IP
Aug 18 Python
利用python求相邻数的方法示例
Aug 18 Python
python中os和sys模块的区别与常用方法总结
Nov 14 Python
Python实现获取前100组勾股数的方法示例
May 04 Python
Python错误处理操作示例
Jul 18 Python
解决python ogr shp字段写入中文乱码的问题
Dec 31 Python
python利用Opencv实现人脸识别功能
Apr 25 Python
python conda操作方法
Sep 11 Python
python实现npy格式文件转换为txt文件操作
Jul 01 Python
Python实现简单猜数字游戏
Feb 03 Python
学点简单的Django之第一个Django程序的实现
Feb 24 #Python
python单例模式的应用场景实例讲解
Feb 24 #Python
python编写扎金花小程序的实例代码
Feb 23 #Python
Python项目实战之使用Django框架实现支付宝付款功能
Feb 23 #Python
Python接口自动化系列之unittest结合ddt的使用教程详解
Feb 23 #Python
python利用opencv实现颜色检测
Feb 23 #Python
详解Python中openpyxl模块基本用法
Feb 23 #Python
You might like
简单易用的计数器(数据库)
2006/10/09 PHP
15种PHP Encoder的比较
2007/04/17 PHP
php的日期处理函数及uchome的function_coomon中日期处理函数的研究
2011/01/12 PHP
浅析Yii中使用RBAC的完全指南(用户角色权限控制)
2013/06/20 PHP
php实现按文件名搜索文件的远程文件查找器
2014/05/10 PHP
什么是PHP7中的孤儿进程与僵尸进程
2019/04/14 PHP
用JavaScript将从数据库中读取出来的日期型格式化为想要的类型。
2009/08/15 Javascript
Jquery实现点击按钮,连续地向textarea中添加值的实例代码
2014/03/08 Javascript
深入探讨javascript中的数据类型
2015/03/04 Javascript
JavaScript各类型的关系图解
2015/10/16 Javascript
Express实现前端后端通信上传图片之存储数据库(mysql)傻瓜式教程(一)
2015/12/10 Javascript
AngularJS 使用$sce控制代码安全检查
2016/01/05 Javascript
window.onload绑定多个事件的两种解决方案
2016/05/15 Javascript
JS小数运算出现多为小数问题的解决方法
2016/06/02 Javascript
关于JavaScript限制字数的输入框的那些事
2016/08/14 Javascript
vue.js的安装方法
2017/05/12 Javascript
js断点调试经验分享
2017/12/08 Javascript
实例详解BootStrap的动态模态框及静态模态框
2018/08/13 Javascript
vue2.0 下拉框默认标题设置方法
2018/08/22 Javascript
JavaScript循环遍历你会用哪些之小结篇
2018/09/28 Javascript
详解keep-alive + vuex 让缓存的页面灵活起来
2019/04/19 Javascript
JavaScript中的this/call/apply/bind的使用及区别
2020/03/06 Javascript
Python3使用requests包抓取并保存网页源码的方法
2016/03/15 Python
Python Opencv实现图像轮廓识别功能
2020/03/23 Python
Python Celery多队列配置代码实例
2019/11/22 Python
python基于event实现线程间通信控制
2020/01/13 Python
python时间与Unix时间戳相互转换方法详解
2020/02/13 Python
在pytorch中实现只让指定变量向后传播梯度
2020/02/29 Python
公认8个效率最高的爬虫框架
2020/07/28 Python
Linux Interview Questions For software testers
2013/05/17 面试题
经理管理专业自荐信范文
2013/12/31 职场文书
运动会通讯稿400字
2014/01/28 职场文书
讲解员培训方案
2014/05/04 职场文书
珍惜资源保护环境的建议书
2014/05/14 职场文书
2014年党小组工作总结
2014/12/20 职场文书
在MySQL中你成功的避开了所有索引
2022/04/20 MySQL