Python进度条的制作代码实例
这篇文章主要介绍了Python进度条的制作代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
importsys,time
#导入模块
foriinrange(50):
#进度条的长度
sys.stdout.write("#")
#进度条的内容,这里要注意了,pycharm有可能不显示write的方法
sys.stdout.flush()
#刷新缓存
time.sleep(0.5)
#间隔时间,和shell的sleep差不多吧
或者
importsys
classprogressbar(object):
def__init__(self,finalcount,block_char='.'):
self.finalcount=finalcount
self.blockcount=0
self.block=block_char
self.f=sys.stdout
ifnotself.finalcount:
return
self.f.write('\n------------------%Progress-------------------1\n')
self.f.write('1234567890\n')
self.f.write('----0----0----0----0----0----0----0----0----0----0\n')
defprogress(self,count):
count=min(count,self.finalcount)
ifself.finalcount:
percentcomplete=int(round(100.0*count/self.finalcount))
ifpercentcomplete<1:
percentcomplete=1
else:
percentcomplete=100
blockcount=int(percentcomplete//2)
ifblockcount<=self.blockcount:
return
foriinrange(self.blockcount,blockcount):
self.f.write(self.block)
self.f.flush()
self.blockcount=blockcount
ifpercentcomplete==100:
self.f.write("\n")
if__name__=="__main__":
fromtimeimportsleep
pb=progressbar(8,"*")
forcountinrange(1,9):
pb.progress(count)
sleep(0.2)
pb=progressbar(100)
pb.progress(20)
sleep(0.3)
pb.progress(47)
sleep(0.3)
pb.progress(90)
sleep(0.3)
pb.progress(100)
print"testing1:"
pb=progressbar(1)
pb.progress(1)
或者
#-*-coding:UTF-8-*- importsys,time classShowProcess(): """ 显示处理进度的类 调用该类相关函数即可实现处理进度的显示 """ i=0#当前的处理进度 max_steps=0#总共需要处理的次数 max_arrow=50#进度条的长度 #初始化函数,需要知道总共的处理次数 def__init__(self,max_steps): self.max_steps=max_steps self.i=0 #显示函数,根据当前的处理进度i显示进度 #效果为[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]100.00% defshow_process(self,i=None): ifiisnotNone: self.i=i else: self.i+=1 num_arrow=int(self.i*self.max_arrow/self.max_steps)#计算显示多少个'>' num_line=self.max_arrow-num_arrow#计算显示多少个'-' percent=self.i*100.0/self.max_steps#计算完成进度,格式为xx.xx% process_bar='['+'>'*num_arrow+'-'*num_line+']'\ +'%.2f'%percent+'%'+'\r'#带输出的字符串,'\r'表示不换行回到最左边 sys.stdout.write(process_bar)#这两句打印字符到终端 sys.stdout.flush() defclose(self,words='done'): print'' printwords self.i=0 if__name__=='__main__': max_steps=100 process_bar=ShowProcess(max_steps) foriinrange(max_steps+1): process_bar.show_process() time.sleep(0.05) process_bar.close()
或者
fromTkinterimport* defresize(ev=one): label.config(font='Helvetica-%dbold'%scale.get()) top=Tk() top.geometry() label=Label(top,text='helloworld!',font='Helvetica-12bold') label.pack(fill=Y,expand=1) scale=Scale(top,from_=10,to=40,orient=HORIZONTAL,command=resize) scale.set(12) scale.pack(fill=X,expand=1) quit=Button(top,text="QUIT",command=top.quit,activeforeground='white',activebackground='red') quit.pack() mainloop()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
10 新人红包祝福语简短精辟
11 幼师给毕业祝福语简短
12 生日高考祝福语妹妹简短
13 下飞机祝福语简短英文
14 元宵发客户祝福语简短
15 爸妈金婚文案祝福语简短
16 新郎朋友红包祝福语简短
17 虎年五一祝福语大全简短
18 出阁宴祝福语姐姐简短