Python无依赖实现一个带百分比的简单进度条

使用 sys.stdout 或 sys.stderr 就可以输出一个简单的进度条:

import time
import sys


def report_progress(progress, total, lbar_prefix = '', rbar_prefix=''):
    percent = round(progress / float(total) * 100)
    buf = "%s|%s|  %s%d/%d %s"%(lbar_prefix, ('#' * percent).ljust(100, '-'),
        rbar_prefix, progress, float(total), "%d%%"%(percent))
    sys.stdout.write(buf)
    sys.stdout.write('\r')
    sys.stdout.flush()


def report_progress_done():
    sys.stdout.write('\n')



total = 100
report_progress(0, total)
for progress in range(1, 101):
    time.sleep(0.1)
    report_progress(progress, total)
report_progress_done()

这里写图片描述

猜你喜欢

转载自blog.csdn.net/tp7309/article/details/79408555