更简单的进度监视器
when-will-it-end的Python项目详细描述
这包含一个类LoopProgressMonitor,您可以 在循环之前实例化,然后在循环内部调用。它 监视每次迭代花费的时间,并预测何时 循环将根据剩余的迭代次数和 到目前为止每次迭代的平均时间。它印出了一个新的预言的结局 只有当最近的预测偏离其内部太远时 估计模的一些公差。
要求
python 3具有以下模块:math,time
示例
importnumpyasnpimporttimeimportwhen_will_it_endaswwienumber_of_iterations=10print('Starting time: '+wwie.format_time(time.time()))lpm=wwie.LoopProgressMonitor(n=number_of_iterations)forkinrange(number_of_iterations):lpm()_=np.random.uniform(0,1,size=100000000)print('Actual ending time: '+wwie.format_time(time.time()))
结果:
Starting time: 18:04:42 Starting first of 10 iterations ... Est. total 18.0 seconds, finish 18:05:00 after 9 iters at 1.8 sec/iter Est. total 20.0 seconds, finish 18:05:02 after 6 iters at 2.0 sec/iter Actual ending time: 18:05:01