Resultaat accumuleren in for-lus Python
Om de som van alle elementen te vinden, is het nodig ze achtereenvolgens op te tellen in elke iteratie van de lus. En het verkregen resultaat moet worden opgeslagen in een aparte variabele.
Stel we hebben een lijst lst:
lst = [1, 2, 3, 4, 5]
Laten we de som van zijn elementen vinden. Eerst
declareren we een lege variabele res, waarin
achtereenvolgens de som van alle elementen
zal worden geaccumuleerd. Vervolgens schrijven we
in de body van de lus de optelling van elk
element erbij:
res = 0
for el in lst:
res = res + el
print(res) # geeft 15
Het optellen van een element kan korter worden
geschreven, door gebruik te maken van de speciale
operator +=:
res += el
Accumulatie kan ook worden gebruikt voor het samenvoegen
van elementen tot één string. Alleen in dit
geval wijzen we aan variabele res niet
0 toe, maar een lege string. Hierin zullen we
alle elementen van de lijst samenvoegen:
lst = ['1', '2', '3', '4', '5']
res = ''
for el in lst:
res += el
print(res) # geeft '12345'
Gegeven een lijst:
tst = [1, 2, 3, 4, 5]
Vind de som van de kwadraten van de elementen in deze lijst.
Gegeven een lijst:
tst = ['a', 'b', 'c', 'd', 'e']
Voeg de elementen van deze lijst samen tot een string met behulp van een lus:
'abcde'
Gegeven een lijst:
tst = [1, 2, 3, 4, 5]
Voeg de elementen van deze lijst samen tot een getal met behulp van een lus:
12345