Python实现显示进度条 |
您所在的位置:网站首页 › 时间进度函数怎么写出来 › Python实现显示进度条 |
文章目录
1. 普通进度条2. 带时间的普通进度条3. tqdm库4. alive_progress库5. progressbar库
1. 普通进度条
利用打印功能print进行实时刷新显示 import sys import time def progress_bar(finish_tasks_number, tasks_number): """ 进度条 :param finish_tasks_number: int, 已完成的任务数 :param tasks_number: int, 总的任务数 :return: """ percentage = round(finish_tasks_number / tasks_number * 100) print("\r进度: {}%: ".format(percentage), "▓" * (percentage // 2), end="") sys.stdout.flush() if __name__ == '__main__': for i in range(0, 101): progress_bar(i, 100) time.sleep(0.05)效果如下: 同样通过print进行打印进度条,不过还加入了time时间显示,显示进度过程中所需要的时间 import time def progress_bar(finish_tasks_number, tasks_number, complete_time): """ 进度条 :param finish_tasks_number: int, 已完成的任务数 :param tasks_number: int, 总的任务数 :param complete_time: float, 已完成的任务所消耗的总时间 :return: """ percentage = round(finish_tasks_number / tasks_number * 100) finished_label = "▓" * (percentage // 2) unfinished_label = "-" * (100 - percentage) arrow = "->" if not finished_label or not unfinished_label: arrow = "" print("\r{}% [{}{}{}] {:.2f}s".format(percentage, finished_label, arrow, unfinished_label, complete_time), end="") if __name__ == '__main__': start = time.perf_counter() for i in range(0, 101): duration = time.perf_counter() - start progress_bar(i, 100, duration) time.sleep(0.05)效果如下: tqdm是一个快速,可扩展的Python进度条,可以在Python长循环中添加一个进度提示信息 import time from tqdm import trange for i in trange(100): # do something time.sleep(0.5)效果如下: alive_progress是一个动态的实时显示进度条库 import time from alive_progress import alive_bar # 假设需要执行100个任务 with alive_bar(100) as bar: for item in range(100): # 遍历任务 # 假设这代码部分需要0.5s time.sleep(0.5) bar() # 显示进度效果如下: 效果如下: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |