Python:%timeit操作

Python:%timeit操作,python,ipython,timeit,Python,Ipython,Timeit,我对如何解释上述输出感到困惑 这是的默认行为,它执行多次运行以获得更可靠的结果 l = range(100) %timeit [i**2 for i in l] 10000 loops, best of 3: 41.6 µs per loop 执行的循环数为1000,它提供了三个执行时间中最好的一个。这是的默认行为,它执行多次运行以获得更可靠的结果 l = range(100) %timeit [i**2 for i in l] 10000 loops, best of 3: 41.6 µ

我对如何解释上述输出感到困惑

这是的默认行为,它执行多次运行以获得更可靠的结果

l = range(100)
%timeit [i**2 for i in l]

10000 loops, best of 3: 41.6 µs per loop

执行的循环数为1000,它提供了三个执行时间中最好的一个。

这是的默认行为,它执行多次运行以获得更可靠的结果

l = range(100)
%timeit [i**2 for i in l]

10000 loops, best of 3: 41.6 µs per loop
执行的循环数为1000,它提供了三个执行时间中最好的一个。

[i**2 for i in l]已被%timeit调用10000次

每次执行这行代码时,%timeit测量所用的时间。请注意%timeit并不总是运行10000次操作。它运行一次并决定该操作应运行多少次。目标是有足够的测量,而不需要1小时来给出估计。如果您尝试使用较大的l,%timeit可能只运行1000次

您的计算机可能正在同时执行一些其他操作,例如浏览器、播放音乐等。。。因此,一些执行可能非常缓慢,不应考虑在内

%timeit在10000次执行中取最短的3次,并显示其平均值。在这些执行过程中,您的计算机可能没有做很多工作,因此相应的时间可能代表了如果您的计算机只专注于此任务所需的时间

%用于告诉iPython这是一个iPython命令,而不是Python命令。如果您在普通Python控制台中尝试,它将失败,并出现语法错误。您也可以在iPython中键入%history。

[i**2 for i in l]已被%timeit调用10000次

每次执行这行代码时,%timeit测量所用的时间。请注意%timeit并不总是运行10000次操作。它运行一次并决定该操作应运行多少次。目标是有足够的测量,而不需要1小时来给出估计。如果您尝试使用较大的l,%timeit可能只运行1000次

您的计算机可能正在同时执行一些其他操作,例如浏览器、播放音乐等。。。因此,一些执行可能非常缓慢,不应考虑在内

%timeit在10000次执行中取最短的3次,并显示其平均值。在这些执行过程中,您的计算机可能没有做很多工作,因此相应的时间可能代表了如果您的计算机只专注于此任务所需的时间


%用于告诉iPython这是一个iPython命令,而不是Python命令。如果您在普通Python控制台中尝试,它将失败,并出现语法错误。您也可以在iPython中键入%history。

3中最好的是什么意思?还有,为什么timeit之前有一个%符号?这是ipython中使用的一个神奇函数,您可以这样使用它,而无需导入模块。另外,由于您的范围是100,它运行了3次->10000,因此是三次中的最佳执行时间。为什么100的范围等于运行3次?当我改变循环数的范围时,它意味着什么?这是默认的行为3,你改变%timeit-r一些数字来重复它的次数,请仔细阅读文档。3中的最佳值是什么意思?还有,为什么timeit之前有一个%符号?这是ipython中使用的一个神奇函数,您可以这样使用它,而无需导入模块。另外,由于您的范围是100,它运行了3次->10000,因此是三次中的最佳执行时间。为什么100的范围等于运行3次?当我改变循环数的范围时,这意味着什么?这是默认的行为3,你改变%timeit-r一些数字以重复它的次数,请查看文档。非常感谢。我明白了,非常感谢。我明白了。