Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> python

Python timeit(): Medindo Tempo de Execução com Exemplos Práticos

Python timeit(): Medindo Tempo de Execução com Exemplos Práticos

O que é Python timeit()?

Python timeit() é um módulo nativo projetado para medir o tempo de execução de pequenos trechos de código com alta precisão. Por padrão, executa a instrução um milhão de vezes e relata a execução mais rápida, o que ajuda a comparar o desempenho de diferentes implementações.

Sintaxe

timeit.timeit(stmt, setup, timer, number)

Parâmetros

Importe o módulo primeiro:

import timeit

Exemplo 1 – Cronometrando uma Expressão Simples

# Testa uma operação aritmética básica
import timeit
print(timeit.timeit("output = 10*5"))

Saída típica:

0.06127880399999999

Isso mostra o tempo (em segundos) gasto na mais rápida de um milhão de execuções.

Cronometrando Múltiplas Linhas

O timeit pode lidar com código multi-linha separando instruções com ponto e vírgula ou passando uma string com aspas triplas.

Usando Ponto e Vírgula

import timeit
print("Tempo gasto:", timeit.timeit(stmt="a=10;b=10;sum=a+b"))

Saída: O tempo gasto é 0.137031482

Usando Strings com Aspas Triplas

import timeit
import_modulo = "import random"
testcode = '''
def test():
    return random.randint(10, 100)
'''
print(timeit.repeat(stmt=testcode, setup=import_modulo))

Métodos Principais

Exemplo 1 – Usando timeit.timeit()

# Testa uma função que retorna inteiro aleatório
import timeit
import_modulo = "import random"
testcode = '''
def test():
    return random.randint(10, 100)
'''
print(timeit.timeit(stmt=testcode, setup=import_modulo))

Saída: 0.46715912400000004

Exemplo 2 – Usando default_timer()

# Mede uma única chamada de função
import timeit
import random

def test():
    return random.randint(10, 100)

inicio = timeit.default_timer()
print("Tempo inicial:", inicio)
test()
print("Diferença de tempo:", timeit.default_timer() - inicio)

Saída: O tempo inicial é: 0.220261875 ... A diferença é: 0.000473732...

Exemplo 3 – Usando timeit.repeat()

# Executa o teste cinco vezes e captura os melhores tempos
import timeit
import_modulo = "import random"
testcode = '''
def test():
    return random.randint(10, 100)
'''
print(timeit.repeat(stmt=testcode, setup=import_modulo, repeat=5))

Saída: [0.436..., 0.504..., 0.506..., 0.394..., 0.354...]

Cada entrada é o melhor tempo para uma iteração dos 1.000.000 de execuções.

Uso via Linha de Comando

Você pode invocar timeit diretamente do shell:

python -m timeit [-n N] [-r N] [-s S] [-t] [-c] [-h] [code statement ...]

Exemplo

python -m timeit -s 'text="hello world"' 
# 20000000 loops, best of 5: 13.1 nsec per loop

Por que timeit() é a Melhor Ferramenta para Cronometrar Código Python

Resumo

O módulo timeit é essencial para benchmark de pequenos trechos Python. Seus parâmetros são diretos:

Certifique-se de usar timeit para medições precisas e repetíveis.

python

  1. Python: Obter Hora Atual e Dados de Fuso Horário com Facilidade
  2. Dominando o Módulo time do Python: Funções, Structs e Exemplos Práticos
  3. Domine o str.count() do Python: Como Contar Caracteres e Substrings com Exemplos
  4. Domine Strings format() em Python com Exemplos Claros
  5. Domine o Método String.find() do Python: Sintaxe, Exemplos e Alternativas
  6. Dominando Funções Lambda em Python: Exemplos Práticos e Boas Práticas
  7. Função round() em Python Explicada com Exemplos Práticos
  8. Dominando a Função map() do Python: Sintaxe, Exemplos e Boas Práticas
  9. Counter do Python em collections: Contagem Eficiente, Atualização e Operações Aritméticas
  10. Entendendo type() e isinstance() em Python: Exemplos Práticos