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编写一个模仿CPU工作的程序
Apr 16 Python
python 简单的绘图工具turtle使用详解
Jun 21 Python
Python决策树之基于信息增益的特征选择示例
Jun 25 Python
python实现指定文件夹下的指定文件移动到指定位置
Sep 17 Python
Python使用pandas对数据进行差分运算的方法
Dec 22 Python
使用python将mysql数据库的数据转换为json数据的方法
Jul 01 Python
python内存管理机制原理详解
Aug 12 Python
Python依赖包整体迁移方法详解
Aug 15 Python
Python实现字符串中某个字母的替代功能
Oct 21 Python
Pytorch之Variable的用法
Dec 31 Python
解决django migrate报错ORA-02000: missing ALWAYS keyword
Jul 02 Python
Python 的 sum() Pythonic 的求和方法详细
Oct 16 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
PHP 和 XML: 使用expat函数(一)
2006/10/09 PHP
PHP数据库万能引擎类adodb配置使用以及实例集锦
2014/06/12 PHP
yii2学习教程之5种内置行为类详解
2017/08/03 PHP
PHP使用Redis实现防止大并发下二次写入的方法
2017/10/09 PHP
AngularJs根据访问的页面动态加载Controller的解决方案
2015/02/04 Javascript
纯javascript实现简单下拉刷新功能
2015/03/13 Javascript
JavaScript创建闭包的两种方式的优劣与区别分析
2015/06/22 Javascript
JQ技术实现注册页面带有校验密码强度
2015/07/27 Javascript
ArtEditor富文本编辑器增加表单提交功能
2016/04/18 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐)
2016/06/23 Javascript
VUE JS 使用组件实现双向绑定的示例代码
2017/01/10 Javascript
Vue使用高德地图搭建实时公交应用功能(地图 + 附近站点+线路详情 + 输入提示+换乘详情)
2018/05/16 Javascript
vue.js动画中的js钩子函数的实现
2018/07/06 Javascript
JS实现Cookie读、写、删除操作工具类示例
2018/08/28 Javascript
JS 音频可视化插件Wavesurfer.js的使用教程
2018/10/31 Javascript
使用vue开发移动端管理后台的注意事项
2019/03/07 Javascript
vue实现按需加载组件及异步组件功能
2019/05/27 Javascript
如何用webpack4.0撸单页/多页脚手架 (jquery, react, vue, typescript)
2019/06/18 jQuery
Tornado Web服务器多进程启动的2个方法
2014/08/04 Python
python的变量与赋值详细分析
2017/11/08 Python
数组保存为txt, npy, csv 文件, 数组遍历enumerate的方法
2018/07/09 Python
pandas 按照特定顺序输出的实现代码
2018/07/10 Python
Python实现树莓派摄像头持续录像并传送到主机的步骤
2020/11/30 Python
css3学习之2D转换功能详解
2016/12/23 HTML / CSS
HTML5新增加的功能详解
2016/09/05 HTML / CSS
html5开发三八女王节表白神器
2018/03/07 HTML / CSS
Club Monaco加拿大官网:设计师男女服装
2019/09/29 全球购物
Parfumdreams芬兰:购买香水和化妆品
2021/02/13 全球购物
如果NULL和0作为空指针常数是等价的,那我到底该用哪一个
2014/09/16 面试题
仓库管理制度
2014/01/21 职场文书
工作会议方案
2014/05/21 职场文书
调研汇报材料范文
2014/08/17 职场文书
2015年银行客户经理工作总结
2015/04/01 职场文书
乡镇法制宣传日活动总结
2015/05/05 职场文书
MutationObserver在页面水印实现起到的作用详解
2022/07/07 Javascript
Python中的 No Module named ***问题及解决
2022/07/23 Python