Bruno Rocha - https://hachyderm.io/@rochacbruno Profile picture
Follow me on https://t.co/FnlD3MZfda

Jul 19, 2021, 9 tweets

Você usa `print` do #python para depurar durante o desenvolvimento?

Mesmo com vários tipos de debuggers disponíveis e o novo `breakpoint` do Python 3.7, na maioria das vezes um simples `print` é mais fácil para inspecionar uma variavél no Python.

Dá para deixar isso melhor 🧵

Primeiro um exemplo do uso do print nativo do python para debugar objetos complexos.

Como dá para perceber o output não é tão amigável de inspecionar.

Dá para deixar isso melhor usando `debug` no lugar de `print`

Porém Python não tem essa função debug nativa, você vai precisar **hackear** seu Python local para adicionar a função debug.

1. Execute

pip install -U devtools[pygments]

O -U vai dizer para isso ser instalado no seu espaço de usuário do sistema.

2. Descubra onde fica o `site` do seu Python, `site` é o diretório onde o interpretador é inicializado.

`python -m site`e é sempre o terceiro item desta lista.

3. Altere seu Python adicionando a Função `debug` como se fosse uma função nativa, desta forma você não vai precisar ficar importando sempre que precisar usar.

Use com moderação, lembre-se que `debug` só existe no seu Python local e nas virtualenvs locais que tenham acesso ao mesmo `site`.

Qualquer objeto que for adicionado a `__builtins__` no sitecustomize .py ficará disponível sem precisar importar, lembre-se que isso é APENAS para ferramentas de desenvolvimento, no ambiente de produção isso não estará disponível.

correção (notado pelo @luzfcb) aqui é para ser `--user` e não `-U` :)

Share this Scrolly Tale with your friends.

A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.

Keep scrolling