#!/usr/bin/env python # coding: utf-8 # In[1]: import itertools # In[2]: A = range(1000) # In[3]: get_ipython().run_cell_magic('timeit', '', 'for x in itertools.product(A, A):\n pass\n') # In[4]: get_ipython().run_cell_magic('timeit', '', 'for a1, a2 in itertools.product(A, A):\n pass\n') # In[5]: get_ipython().run_cell_magic('timeit', '', 'for a1 in A:\n for a2 in A:\n pass\n') # In[6]: get_ipython().run_cell_magic('timeit', '', 'for x in ((a1, a2) for a1 in A for a2 in A):\n pass\n') # In[7]: get_ipython().run_cell_magic('timeit', '', 'for a1, a2 in ((a1, a2) for a1 in A for a2 in A):\n pass\n') # In[8]: get_ipython().run_cell_magic('timeit', '', 'v = 0\nfor a1, a2 in itertools.product(A, A):\n v += a1 * a2\n') # In[9]: get_ipython().run_cell_magic('timeit', '', 'v = 0\nfor a1 in A:\n for a2 in A:\n v += a1 * a2\n') # In[10]: get_ipython().run_cell_magic('timeit', '', 'v = sum(a1 * a2 for a1, a2 in itertools.product(A, A))\n') # In[11]: get_ipython().run_cell_magic('timeit', '', 'v = sum(a1 * a2 for a1 in A for a2 in A)\n') # In[12]: B = range(100) # In[13]: get_ipython().run_cell_magic('timeit', '', 'for x in itertools.product(B, B, B):\n pass\n') # In[14]: get_ipython().run_cell_magic('timeit', '', 'for b1, b2, b3 in itertools.product(B, B, B):\n pass\n') # In[15]: get_ipython().run_cell_magic('timeit', '', 'for b1 in B:\n for b2 in B:\n for b3 in B:\n pass\n') # In[16]: get_ipython().run_cell_magic('timeit', '', 'for x in ((b1, b2, b3) for b1 in B for b2 in B for b3 in B):\n pass\n') # In[17]: get_ipython().run_cell_magic('timeit', '', 'for b1, b2, b3 in ((b1, b2, b3) for b1 in B for b2 in B for b3 in B):\n pass\n')