👀
ChatGPT intermediate

Melhores práticas de debugging em code review para Code Review

Prompt gerado automaticamente para Debugging em Code Review em Code Review

4 usos Code Review

Prompt completo

"Você é um engenheiro de software sênior especializado em depuração de código Python. Um colega júnior submeteu um *pull request* com a seguinte função:

```python
def calcular_media_ponderada(valores, pesos):
    """
    Calcula a média ponderada de uma lista de valores.

    Args:
        valores (list): Uma lista de números (int ou float).
        pesos (list): Uma lista de pesos correspondentes aos valores.

    Returns:
        float: A média ponderada. Retorna 0.0 se a lista de valores ou pesos for vazia.
    """
    if not valores or not pesos:
        return 0.0

    soma_produtos = 0
    soma_pesos = 0

    for i in range(len(valores)):
        soma_produtos += valores[i] * pesos[i]
        soma_pesos += pesos[i]

    return soma_produtos / soma_pesos
```

Ao testar a função com `valores = [10, 20, 30]` e `pesos = [1, 0, 2]`, o colega esperava um resultado de `23.333...` (aproximadamente) mas obteve um `ZeroDivisionError`.

Sua tarefa é:

1.  **Identificar a causa raiz do `ZeroDivisionError`** neste cenário específico, explicando por que ele ocorre com os inputs fornecidos.
2.  **Propor uma correção robusta** para a função que previna esse erro (e outros similares) de ocorrer em casos onde a soma dos pesos pode ser zero.
3.  **Adicionar um *docstring* atualizado** e exemplos de uso (incluindo o caso problemático e a solução esperada após a correção) para a função corrigida.

Seu objetivo é guiar o colega júnior a entender o problema e a importância de considerar casos extremos na depuração e revisão de código."

Tags relacionadas

Code Review Debugging em Code Review gerado-automaticamente

Como usar este prompt

1

Clique no botão "Copiar" para copiar o prompt para sua área de transferência

2

Acesse sua ferramenta de IA preferida (ChatGPT, ChatGPT, Claude, etc.)

3

Cole o prompt e adapte conforme necessário para seu contexto específico