📜  终端中的微调器进度 (1)

📅  最后修改于: 2023-12-03 14:56:51.389000             🧑  作者: Mango

终端中的微调器进度

在编写程序的过程中,经常需要观察长时间运行的进度。这时候,终端中的微调器进度就可以派上用场了。微调器进度可以用来显示进度条,提示当前进度。

语法
import sys
def progress_bar(current, total, message=None):
    """
    :param current: 当前进度,范围0~total
    :param total: 总进度
    :param message: 显示在进度条上的文字
    """
    if message:
        sys.stdout.write('\r{0}:'.format(message))
    sys.stdout.write("[{0}{1}] {2:.2f}%".format("#" * int(current * 50 / total), "-" * (50 - int(current * 50 / total)), float(current) / float(total) * 100))
    if current == total:
        sys.stdout.write('\n')
    sys.stdout.flush()
参数说明
  • current: 当前已经完成的进度。类型为整数。
  • total: 总的进度。类型为整数。
  • message: 进度条上显示的文字。类型为字符串。
使用

调用progress_bar函数,并传入当前进度和总进度即可显示进度条。下面是一个简单的示例:

import time

for i in range(101):
    progress_bar(i, 100, message="Loading")
    time.sleep(0.1)
效果展示

Loading:[##################################################] 100.00%