time模块是Python的内置模块,直接导入即可使用:
import time
time库包括三类函数:
- 时间获取:time() ctime() gmtime()
- 时间格式化:strftime() strptime()
- 程序计时:sleep() perf_counter()
单行动态刷新:\r,在同一行输出后退回到初始位置,重新输出,制造刷新的feeling
注意:要在命令行(也叫控制台、Windows的cmd)下才能使用(即双击保存的.py文件),IDLE屏蔽了’\r’的功能
import time
for i in range(101):
print("\r{:3}%".format(i),end='')
time.sleep(0.1)
format()方法的格式控制:
#打印奇数个星星居中显示
n = eval(input())
for i in range(1,n+1,2):
print("{0:^{1}}".format("*"*i,n))
#四则运算
s = input()
print("{:.2f}".format(eval(s)))
#数字形式转换
template = "零一二三四五六七八九"
s = input()
for c in s:
print(template[eval(c)], end="")
文本进度条完整版:
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() #换行
print("执行结束".center(scale//2,"-"))
(1) 文本进度条程序使用了 perf_counter() 计时,计时方法适合各类需要统间的算问题,例如:比较不同算法时间 、统计程序运行时;
(2) 进度条的单行回退要在命令行(也叫控制台、Windows的cmd)下才能使用,IDLE屏蔽了’\r’的功能;
(3) 进度条可应用在:任何运行时间需要较长的程序中;任何希望提高用户体验的应中;进度条是人机交互的纽带之一。