How to use timeit module

后端 未结 14 2656
猫巷女王i
猫巷女王i 2020-11-22 07:36

I understand the concept of what timeit does but I am not sure how to implement it in my code.

How can I compare two functions, say insertion_sort

14条回答
  •  太阳男子
    2020-11-22 07:54

    If you want to use timeit in an interactive Python session, there are two convenient options:

    1. Use the IPython shell. It features the convenient %timeit special function:

      In [1]: def f(x):
         ...:     return x*x
         ...: 
      
      In [2]: %timeit for x in range(100): f(x)
      100000 loops, best of 3: 20.3 us per loop
      
    2. In a standard Python interpreter, you can access functions and other names you defined earlier during the interactive session by importing them from __main__ in the setup statement:

      >>> def f(x):
      ...     return x * x 
      ... 
      >>> import timeit
      >>> timeit.repeat("for x in range(100): f(x)", "from __main__ import f",
                        number=100000)
      [2.0640320777893066, 2.0876040458679199, 2.0520210266113281]
      

提交回复
热议问题