Home  >  Article  >  Backend Development  >  How to use timer timeit in python

How to use timer timeit in python

不言
不言Original
2018-06-02 15:20:293121browse

This article mainly introduces how to use the timer timeit in python. It has certain reference value. Now I share it with you. Friends in need can refer to it.

This article introduces the timer in python. I would like to share with you how to use the timer timeit, as follows:

timeit

Usually time.time() is used before and after a program. , and then subtract it to get the running time of a program, but python provides a more powerful timing library: timeit

#导入timeit.timeit
from timeit import timeit 

#看执行1000000次x=1的时间:
timeit('x=1')

#看x=1的执行时间,执行1次(number可以省略,默认值为1000000):
timeit('x=1', number=1)

#看一个列表生成器的执行时间,执行1次:
timeit('[i for i in range(10000)]', number=1)

#看一个列表生成器的执行时间,执行10000次:
timeit('[i for i in range(100) if i%2==0]', number=10000)

Test the execution time of a function :

from timeit import timeit

def func():
  s = 0
  for i in range(1000):
    s += i
  print(s)

# timeit(函数名_字符串,运行环境_字符串,number=运行次数)
t = timeit('func()', 'from __main__ import func', number=1000)
print(t)

This program tests the execution time of the function running 1000 times

repeat:

Since there are always other programs on the computer that are also occupying resources, your program cannot execute most efficiently. Therefore, multiple tests are generally conducted, and the smallest execution time is taken as the real execution time.

from timeit import repeat

def func():
  s = 0
  for i in range(1000):
    s += i

#repeat和timeit用法相似,多了一个repeat参数,表示重复测试的次数(可以不写,默认值为3.),返回值为一个时间的列表。
t = repeat('func()', 'from __main__ import func', number=100, repeat=5)
print(t) 
print(min(t))

Related recommendations:

Example of Python method to calculate the value of pi to any position

The above is the detailed content of How to use timer timeit in python. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn