3

在 iPython 中,%timeitmagic 函数在确定语句计时时执行的合理迭代次数方面做得很好。timeit文档建议只能从命令行自动确定循环数。

真的是这样吗?或者是否有一种解决方法(或普遍接受/常见的黑客攻击)可以在代码中完成“神奇”行为?

我想要实现的是:

timer_results = [cool_timeit_function(stm) for stm in statement_list]

wherecool_timeit_function将自动决定是运行 1 个循环,还是 10 个,或 100 个等。

我想写一些你执行给定语句一次的东西不会太难,然后如果发生得非常快,你做 10 倍,如果发生得非常快,你做 100 倍,等等......直到例如,执行需要 > 0.1 秒。然后,您可以进行 10 倍重复次数的适当重复计时(以便最终计时运行在 1 到 10 秒之间)或类似的东西。您甚至可以指定您希望最终计时运行需要多长时间,以及您应该执行多少组该多重性来获得“困扰”的结果。

但我不能成为第一个想要这个的人。任何人都可以指出现有的解决方案吗?

4

0 回答 0