Python-print骚操作之进度条(二)

目录

普通进度条

带时间进度条

progress进度条

alive_progress进度条

PySimpleGUI图形化进度条


普通进度条

在代码迭代运行中可以自己进行统计计算,并使用格式化字符串输出代码运行进度

import sys
import time
for i in range(1, 101):
    print("\r", end="")
    print("下载进度{}%: ".format(i), "\33[1;91;43m▋\33[1;32;0m" * (i // 2), end="")
    sys.stdout.flush()
    time.sleep(0.05)

  

带时间进度条

import time
scale = 50
start = time.perf_counter()
for i in range(scale + 1):
    a = "\33[1;91;101m▋\33[1;32;0m" * i
    b = " " * (scale - i)
    c = (i / scale) * 100
    dur = time.perf_counter() - start
    print("\r下载进度{:^3.0f}% {}{} {:.2f}s".format(c, a, b, dur), end="")
    time.sleep(0.05)

  

progress进度条

只需要定义迭代的次数、进度条类型并在每次迭代时告知进度条即可,

官方:https://pypi.org/project/progress

import time
from progress.bar import IncrementalBar
from progress.bar import Bar

i = 10
# bar = IncrementalBar('进度', max=1)
bar = Bar('进度', max=i, fill='\33[1;91;101m❤ \33[1;32;0m', suffix='%(percent)d%%')
for item in range(10):
    bar.next()
    time.sleep(1)
    bar.finish()

  

alive_progress进度条

这个进度条多了一些动画效果,相关文档:https://github.com/rsalmei/alive-progress

import time
from alive_progress import alive_bar

items = range(100)
with alive_bar(total=len(items)) as bar:
    for item in items:
        bar()
        time.sleep(0.1)

​​​​​​​  

PySimpleGUI图形化进度条

import PySimpleGUI as sg
import time

num = 100
for i in range(num):
    sg.one_line_progress_meter('任务下载进度', current_value=i, max_value=num, key='完成!', no_button=True, keep_on_top=True)
    time.sleep(0.1)

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值