python基础学习日志day8-实现进度条功能,for和yield实现
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础学习日志day8-实现进度条功能,for和yield实现相关的知识,希望对你有一定的参考价值。
实现进度条功能
方法一:简单FOR实现打印进度条功能 for i in range(10): print("#",end="",flush=True) time.sleep(0.4)
#方法二,yeild实现复杂进度条功能 def show_process(total): recive_size=0 current_size=0 while recive_size<total: if int(recive_size/total*100) >current_size: #进度比现在的大 print("#",end="",flush=True) current_size=int(recive_size/total*100) new_size=yield #中断 recive_size+=new_size total=10000000 recive_size=0 precess=show_process(total) #调用getnerator precess.__next__() while recive_size <total: recive_size+=10 try: precess.send(10) #给generotor发送数据,并继续yield后面的执行 except StopIteration as e: print("100%")
以上是关于python基础学习日志day8-实现进度条功能,for和yield实现的主要内容,如果未能解决你的问题,请参考以下文章