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()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。