代码理解:
函数view_bar(num,total) num是一个随即数,total是总数( num / total ) * 100 的int类型可以计算百分比 ‘\r%d%%%s‘ % (rate_num,‘=‘*num) \r代表始终在一行的开头进行输出 %d代表接收数字形式的百分比,与括号中的rate_num匹配 %%代表百分号%,要想输出特殊字符%需要在加一个用于转义。 %s与之后的‘=‘*num进行匹配,用于输出一定数量的=> sys.stdout.write(r) 代表没输出一行后不需要换行,直接输出即可。 sys.stdout.flush() 代表清空控制台内容,与sys.stdout.write(r)配合使用即可达到始终在一行的开头输出百分比数字的效果。 for循环中的time.sleep(0.3) 代表没0.3秒给出一个数字,用于计算百分比
代码部分:
import sys import time def view_bar(num,total): rate = num / total rate_num = int(rate * 100) r = ‘\r%d%%%s>‘ % (rate_num,‘=‘*num) sys.stdout.write(r) sys.stdout.flush() if __name__ == ‘__main__‘: for i in range(1,101): time.sleep(0.3) view_bar(i,100)
执行结果:
20%====================> 51%===================================================> 100%====================================================================================================>
时间: 2024-10-27 07:22:35