The easiest way to measure the execution time of a single statement is to use IPython’s magic function %timeit.
The shell IPython adds additional functionality to standard Python. These extra functions are called magic functions.
As the execution time of a single statement can be extremely short, the statement is placed in a loop and executed several times. By taking the minimum measured time, you make sure that other tasks running on the computer do not influence the measured result too much.
Let's consider four alternative ways to extract nonzero elements from an array as follows:
A=zeros((1000,1000)) A[53,67]=10 def find_elements_1(A): b = [] n, m = A.shape for i in range(n): for j in range(m): if abs(A[i, j]) > 1.e-10: b.append(A[i, j]) return b def find_elements_2(A): return [a for a in A.reshape((-1, )) if abs(a) > 1.e-10] def find_elements_3...