擅长:python、mysql、java
<p>如果在IPython中以交互方式运行Python脚本,则以下操作有效。E、 g.,<code>test.py</code>:</p>
<pre><code>def f():
# Algorithm 1
pass
def g():
# Algorithm 2
pass
# which one is faster?
mgc = get_ipython().magic
mgc(u'%timeit f()')
mgc(u'%timeit g()')
</code></pre>
<p>然后在IPython中交互运行</p>
<pre><code>%run -i test.py
</code></pre>
<p>说出时间。必须使用<code>-i</code>开关,以便变量在作用域中。如果不运行IPython实例,也就是从IPython导入<code>timeit</code>并将其用作函数,我就不知道如何做到这一点。但是,这个解决方案适合我的目的,即自动化一些计时运行。</p>