Acumulando resultado em um loop for Python
Para encontrar a soma de todos os elementos, é necessário somá-los sequencialmente em cada iteração do loop. E o resultado obtido deve ser armazenado em uma variável separada.
Suponha que temos uma lista lst:
lst = [1, 2, 3, 4, 5]
Vamos encontrar a soma de seus elementos. Primeiro,
vamos declarar uma variável vazia res, na
qual a soma de todos os elementos será
acumulada sequencialmente. Em seguida, no corpo do loop,
registramos a adição de cada
elemento a ela:
res = 0
for el in lst:
res = res + el
print(res) # exibirá 15
É possível registrar a adição do elemento de uma forma
mais curta, usando um operador
especial +=:
res += el
A acumulação também pode ser usada para unir
elementos em uma única string. Só que neste
caso, atribuiremos à variável res não
0, mas uma string vazia. Nela, vamos
concatenar todos os elementos da lista:
lst = ['1', '2', '3', '4', '5']
res = ''
for el in lst:
res += el
print(res) # exibirá '12345'
Dada a lista:
tst = [1, 2, 3, 4, 5]
Encontre a soma dos quadrados dos elementos desta lista.
Dada a lista:
tst = ['a', 'b', 'c', 'd', 'e']
Usando um loop, una os elementos desta lista em uma string:
'abcde'
Dada a lista:
tst = [1, 2, 3, 4, 5]
Usando um loop, una os elementos desta lista em um número:
12345