Python 如何获取时间类执行的进度条
我正在尝试使用进度条显示脚本的进度。我希望它在类中的每个函数执行后都能增加进度。我尝试过的代码如下:Python 如何获取时间类执行的进度条,python,class,progress-bar,Python,Class,Progress Bar,我正在尝试使用进度条显示脚本的进度。我希望它在类中的每个函数执行后都能增加进度。我尝试过的代码如下: import progressbar from time import sleep class hello(): def no(self): print 'hello!' def yes(self): print 'No!!!!!!' def pro(): bar = progressbar.ProgressBar(widgets=
import progressbar
from time import sleep
class hello():
def no(self):
print 'hello!'
def yes(self):
print 'No!!!!!!'
def pro():
bar = progressbar.ProgressBar(widgets=[progressbar.Bar('=', '[', ']'), ' ', progressbar.Percentage()])
for i in Yep():
bar.update(Yep.i())
sleep(0.1)
bar.finish()
if __name__ == "__main__":
Yep = hello()
pro()
有人知道如何让它工作吗。谢谢这是你想要的吗
import progressbar
from time import sleep
class hello():
def no(self):
print 'hello!'
def yes(self):
print 'No!!!!!!'
def __call__(self) :
methods = [self.no, self.yes]
return [ (x[0]*100/len(methods), x[1]) for x in enumerate(methods) ]
def pro():
bar = progressbar.ProgressBar(widgets=[progressbar.Bar('=', '[', ']'), ' ', progressbar.Percentage()])
for percent, method in Yep():
bar.update(percent)
method()
sleep(0.1)
bar.finish()
if __name__ == "__main__":
Yep = hello()
pro()
可能的改进:发现要按名称调用的方法(例如,在它们前面加上progress\uux)