Java教程

文本进度条

本文主要是介绍文本进度条,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1. 简单的开始

1.1)range从0开始

1.2)^表示中间对齐

 

# coding=utf-8
import time
scale = 10
print("------执行开始------")
for i in range(scale + 1):
    a = '*' * i
    b = '.' * (scale - i)
    c = (i/scale) * 100
    print("{:^3.0f}%[{}->{}]".format(c, a, b))
    time.sleep(0.1)
print("------执行结束------")

 

 

2.单行动态刷新

2.1)range从0开始,到100结束

2.2)\r表示将光标放到当前行行首

2.3)end=‘“”表示打印结束不换行(print函数默认打印完后换行)

2.4)在idle环境中\r功能被屏蔽,会输出所有执行结果

 

import time

for i in range(101):
    print("\r{}%".format(i), end="")
    time.sleep(0.1)

 

 

3.单行进度条计时刷新

3.1)字符串处理中的.center方法,将“-”添加在字符两侧

3.2)scale//2,数值运算操作符//表示整数除,向下取整

3.3)perf_counter函数用于计时,定义start来确定一个开始时间

3.4)dur变量用来记录每一次需要打印文本进度条时消耗的时间,当前时间减去开始时间

 

import time
scale = 50
print("执行开始".center(scale//2, "-"))
start= time.perf_counter()
for i in range(scale + 1):
    a = '*' * 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.1)
print("\n" + "执行结束".center(scale//2, "-"))

 

这篇关于文本进度条的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!