代码实现
l = [a, b, c, d] # 例如,列表l num = len(l) for i in range(num): # 一些操作 print("\r[%6.2f%%][%-50s]\r" % (100 * (i 1) / num, '>' * (50 * (i 1) // num)), end='', flush=True) print('\nFinish!')
运行效果

原理
[%6.2f%%] 限制长度为6,浮点数保留两位小数
[%-50s] 限制长度为50,字符串左对齐
(100 * (i 1) / num 计算百分比,保留两位小数
'>' * (50 * (i 1) // num) 当前进度条的长度字符串,‘>‘是填充进度条的符号,可以改为长度为一个字符长度的符号,如’#’
end='', flush=True 不换行,实时刷新缓冲区
print('\nFinish!') 最后,打印一个换行符,否则进度条将被覆盖