【Python学习】Python实现进度条的4种方式
这里只列举了部分方法,其他方法或python库暂时还没使用到 马蜂窝刷粉丝【微信:156150954】
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)
果:
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()方法是立即刷新输出的内容
效果:
3.tqdm库
使用样例:
from time import sleep from tqdm import tqdm for i in tqdm(range(20)): sleep(0.5)
效果:
4.progressbar
安装:
pip3 install progressbar2
使用样例:
import time from progressbar import * progress = ProgressBar() for i in progress(range(1000)): time.sleep(0.01)
作者:gtea
博客地址:https://www.cnblogs.com/gtea
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
2020-08-08 【Jmeter学习】Jmeter案例
2020-08-08 【Jmeter学习】Jmeter简易教程