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的web框架中中编写日志列表的教程
Apr 30 Python
Python实现的简单hangman游戏实例
Jun 28 Python
python创建列表并给列表赋初始值的方法
Jul 28 Python
Python制作爬虫抓取美女图
Jan 20 Python
Python科学计算之NumPy入门教程
Jan 15 Python
Python pymongo模块用法示例
Mar 31 Python
Python文本处理之按行处理大文件的方法
Apr 09 Python
Python模拟自动存取款机的查询、存取款、修改密码等操作
Sep 02 Python
python3中property使用方法详解
Apr 23 Python
python flask搭建web应用教程
Nov 19 Python
Python如何使用Gitlab API实现批量的合并分支
Nov 27 Python
python关于倒排列的知识点总结
Oct 13 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
星际争霸中的对战模式介绍
2020/03/04 星际争霸
[FAQ]PHP中的一些常识:类篇
2006/10/09 PHP
PHP的MVC模式实现原理分析(一相简单的MVC框架范例)
2014/04/29 PHP
PHP数组去重比较快的实现方式
2016/01/19 PHP
laravel框架select2多选插件初始化默认选中项操作示例
2020/02/18 PHP
[原创]图片分页查看
2006/08/28 Javascript
JS分页控件 可用于无刷新分页
2013/07/23 Javascript
浅析jQuery EasyUI中的tree使用指南
2014/12/18 Javascript
jQuery入门介绍之基础知识
2015/01/13 Javascript
jQuery时间轴插件使用详解
2015/07/16 Javascript
JQuery实现级联下拉框效果实例讲解
2015/09/17 Javascript
标准的js无缝滚动效果
2016/08/30 Javascript
node.js学习之交互式解释器REPL详解
2016/12/08 Javascript
微信小程序 input输入框控件详解及实例(多种示例)
2016/12/14 Javascript
Angular.js中ng-include用法及多标签页面的实现方式详解
2017/05/07 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
react中的ajax封装实例详解
2017/10/17 Javascript
关于Vue组件库开发详析
2018/07/01 Javascript
vue分页器组件编写方法详解
2019/06/28 Javascript
Centos Python2 升级到Python3的简单实现
2016/06/21 Python
Python虚拟环境项目实例
2017/11/20 Python
pandas 小数位数 精度的处理方法
2018/06/09 Python
使用python进行拆分大文件的方法
2018/12/10 Python
python实现自动解数独小程序
2019/01/21 Python
python接口自动化之ConfigParser配置文件的使用详解
2020/08/03 Python
Scrapy-Redis之RedisSpider与RedisCrawlSpider详解
2020/11/18 Python
css3过渡_动力节点Java学院整理
2017/07/11 HTML / CSS
美国知名眼镜网站:Target Optical
2020/04/04 全球购物
自动化毕业生专业自荐书范文
2014/02/04 职场文书
工作态度检讨书
2014/02/11 职场文书
《乞巧》教学反思
2014/02/27 职场文书
幼儿园优秀班主任事迹材料
2014/05/14 职场文书
全国优秀辅导员事迹材料
2014/05/14 职场文书
新闻发布会活动策划方案
2014/09/15 职场文书
开展党的群众路线教育实践活动情况汇报
2014/11/05 职场文书
单位车辆管理制度
2015/08/05 职场文书