1
resposta

Praticando python laços for while

Calculando a soma de números

Com laço for

valores = [10, 20, 30, 40, 50]

soma = 0
for valor in valores:
  soma += valor

print(f"A soma total das receitas é: {soma}")

Com função sum

valores = [10, 20, 30, 40, 50]

soma = sum(valores)
print(f"A soma total das receitas é: {soma}")
1 resposta

Olá, Esdras. Como vai?

Sua postagem demonstra muito bem a evolução de um código em Python. Você apresentou o padrão acumulador utilizando o laço for e, em seguida, a forma mais otimizada utilizando a função nativa sum().

Ambas as abordagens estão corretas, mas entender quando usar cada uma é fundamental para escrever códigos eficientes:

  • Laço for: É a melhor escolha quando você precisa de controle total sobre a iteração. Por exemplo, se você precisasse realizar um cálculo complexo com cada valor antes de somar, ou se houvesse uma condição específica para a soma.
  • Função sum(): É a forma mais pythônica de resolver o problema quando o objetivo é apenas totalizar os valores. Além de tornar o código mais legível (seguindo o princípio de que menos linhas de código podem facilitar a manutenção), ela é implementada de forma otimizada internamente na linguagem.

Para agregar valor aos seus estudos, imagine um cenário onde você precisa somar apenas os valores de receitas que sejam maiores que um determinado limite. Nesse caso, o laço for com uma estrutura condicional seria necessário:

valores = [10, 20, 30, 40, 50]
limite = 25
soma_filtrada = 0

for valor in valores:
    if valor > limite:
        soma_filtrada += valor

print(f"A soma das receitas maiores que {limite} é: {soma_filtrada}")

Uma dica de boa prática é sempre buscar o equilíbrio entre a simplicidade da função sum() e a flexibilidade do for. Se a tarefa for simples, prefira as funções nativas do Python. Se precisar de lógica personalizada, os laços de repetição serão seus melhores aliados.

Espero que possa ter lhe ajudado!