15.12.2022 Views

Python Eficaz

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

locais em níveis mais altos da pilha de chamadas.

• down: Move o escopo um nível abaixo na pilha de chamadas de função.

Uma vez inspecionado o estado atual, podemos usar o depurador para continuar

a execução do programa sob nosso rigoroso controle.

• step: Executa apenas a próxima linha do programa e devolve o controle ao

depurador. Se a próxima linha incluir a chamada de uma função, o depurador

entrará em pausa logo antes da próxima instrução interna dessa função.

• next: Executa apenas a próxima linha do programa e devolve o controle ao

depurador. Contudo, se a próxima linha incluir a chamada de uma função, o

depurador irá executar a função por completo e parar imediatamente depois

de a função devolver seu valor de retorno.

• return: Executa o programa até que a função atual devolva seu valor de

retorno e depois devolve o controle para o depurador.

• continue: Continua executando o programa até o próximo breakpoint (ou até

que set_trace seja novamente chamado).

Lembre-se

• Podemos iniciar o depurador interativo do Python (pdb) em um determinado

ponto de interesse do programa, bastando inserir os comandos import pdb;

pdb.set_trace() nos locais apropriados.

• O prompt do pdb é um shell completo do Python que permite inspecionar e

modificar o estado de um programa em execução.

• Os comandos do shell do pdb permitem controlar com precisão o programa

em execução, permitindo alternar entre inspecionar o estado do programa e

avançar passo a passo em sua execução.

Item 58: Meça os perfis de desempenho antes de

otimizar o código

A natureza dinâmica do Python causa comportamentos surpreendentes em seu

desempenho durante a execução. Operações que pensaríamos ser lentas são, na

verdade, muito rápidas (manipulação de strings, geradores). Recursos da

linguagem que esperaríamos ser mais rápidos são, para nossa surpresa,

www.full-ebook.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!