为什么%% timeit在Jupyter Notebook中可以正常工作,但是在Python Shell IDLE中抛出SyntaxError?

问题描述

%%timeit
d = deque()
for i in range(40000):
    d.appendleft(i)

上面的代码在Jupyter Notebook中打印出执行时间为:每个循环3.39 ms±168 µs(平均±标准偏差,运行7次,每个循环100个) 但是,当我在Python IDLE Shell中运行此代码时,它在%% timeit中的%处指示SyntaxError。怎么样了?

解决方法

因为%%是Jupyter的“细胞魔术”:https://ipython.readthedocs.io/en/stable/interactive/magics.html#cell-magics

这不是本机Python语法。

,

%%time就是Jupyter的magic command