美文网首页
python现实进度条

python现实进度条

作者: 1直领悟不够 | 来源:发表于2019-07-28 14:06 被阅读0次

    '''
    import time
    from tqdm import tqdm, trange

    for i in tqdm(range(100)):
    time.sleep(0.05)

    效果:
    100%|██████████| 100/100 [00:05<00:00, 19.78it/s]
    '''

    '''
    import time

    scale = 50

    print("执行开始".center(scale//2,"-")) # .center() 控制输出的样式,宽度为 25//2,即 22,汉字居中,两侧填充 -

    start = time.perf_counter() # 调用一次 perf_counter(),从计算机系统里随机选一个时间点A,计算其距离当前时间点B1有多少秒。当第二次调用该函数时,默认从第一次调用的时间点A算起,距离当前时间点B2有多少秒。两个函数取差,即实现从时间点B1到B2的计时功能。

    for i in range(scale+1):

    a = '#' * i # i 个长度的 * 符号

    b = '.' * (scale-i) # scale-i) 个长度的 . 符号。符号 * 和 . 总长度为50

    c = (i/scale)*100 # 显示当前进度,百分之多少

    dur = time.perf_counter() - start # 计时,计算进度条走到某一百分比的用时

    print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end='') # \r用来在每次输出完成后,将光标移至行首,这样保证进度条始终在同一行输出,即在一行不断刷新的效果;{:^3.0f},输出格式为居中,占3位,小数点后0位,浮点型数,对应输出的数为c;{},对应输出的数为a;{},对应输出的数为b;{:.2f},输出有两位小数的浮点数,对应输出的数为dur;end='',用来保证不换行,不加这句默认换行。

    time.sleep(0.1) # 在输出下一个百分之几的进度前,停止0.1秒

    print("\n"+"执行结果".center(scale//2,'-'))

    效果:
    -----------执行开始----------
    100%[**************************************************->]5.03s
    -----------执行结果----------
    '''

    相关文章

      网友评论

          本文标题:python现实进度条

          本文链接:https://www.haomeiwen.com/subject/qaourctx.html