De som van de getallen in de lijst is overal vereist. Python biedt een ingebouwde functie sum() die de getallen in de lijst opsomt.
Sum()-functie in Python-syntaxis
Syntaxis: som (itereerbaar, begin)
- itereerbaar: itereerbaar kan alles zijn list , tuples of dictionaries , maar het allerbelangrijkste: het moeten getallen zijn.
- begin : dit begin wordt opgeteld bij de som van de getallen in de iterabele. Als start niet wordt opgegeven in de syntaxis, wordt aangenomen dat deze 0 is.
Mogelijk nog twee syntaxis
som(a): a is de lijst, het telt alle getallen in de lijst a op en begint op 0, dus retourneert alleen de som van de getallen in de lijst.
som(a, begin): dit retourneert de som van de lijst + start De som
Voorbeelden van Python Sum()-functies
Verkrijg de som van de lijst in Python .
Python3
numbers> => [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ,> 1> ,> 4> ,> 5> ]> Sum> => sum> (numbers)> print> (> Sum> )> Sum> => sum> (numbers,> 10> )> print> (> Sum> )> |
>
>
Uitgang:
25 35>
Hieronder behandelen we enkele voorbeelden waarbij de somfunctie met verschillende datatypes in Python wordt gebruikt om de som van de gegevens in de gegeven invoer te berekenen
- Somfunctie op a Woordenboek
- Somfunctie op a Set
- Somfunctie op a Tupel
- De som in Python met For Lus
- Fouten en uitzonderingen
- Praktische toepassing
Python Sum-functie in een woordenboek
In dit voorbeeld maken we een tupel van 5 getallen en gebruiken we som() op de woordenboek in Python.
Python3
my_dict> => {> 'a'> :> 10> ,> 'b'> :> 20> ,> 'c'> :> 30> }> total> => sum> (my_dict.values())> print> (total)> |
>
>
Uitgang:
60>
Tijdcomplexiteit: O(1)
Ruimtecomplexiteit: Op)
Python Sum-functie op een set
In dit voorbeeld maken we een tupel van 5 getallen en gebruiken we sum() op de set in Python.
Python3
my_set> => {> 1> ,> 2> ,> 3> ,> 4> ,> 5> }> total> => sum> (my_set)> print> (total)> |
xdxd betekenis
>
>
Uitgang:
15>
Python Sum-functie op een Tuple
In dit voorbeeld maken we een tupel van 5 getallen en gebruiken we sum() op de tupel in Python.
Python3
my_tuple> => (> 1> ,> 2> ,> 3> ,> 4> ,> 5> )> total> => sum> (my_tuple)> print> (total)> |
>
>
Uitgang:
15>
Tijdcomplexiteit: O(1)
Ruimtecomplexiteit: Op)
De som in Python met For Loop
Hierin definieert de code eerst een lijst met getallen. Vervolgens initialiseert het een variabele met de naam total op 0. De code doorloopt vervolgens de lijst met behulp van een for lus, en voor elk getal in de lijst wordt dat getal opgeteld bij de totale variabele. Ten slotte drukt de code de totale waarde af, wat de som is van de getallen in de lijst.
Python3
# Define a list of numbers> numbers> => [> 10> ,> 20> ,> 30> ,> 40> ,> 50> ]> # Initialize a variable to store the sum> total> => 0> # Iterate through the list and add each number to the total> for> num> in> numbers:> > total> +> => num> # Print the sum of the numbers> print> (> 'The sum of the numbers is:'> , total)> |
>
>
Uitgang:
The sum of the numbers is: 150>
Tijdcomplexiteit: Op)
Ruimtecomplexiteit: Op)
Fouten en uitzonderingen
TypeError : deze fout treedt op als er iets anders dan getallen in het bestand staat lijst . In het gegeven voorbeeld gebruiken we een lijst met Python3
Python3
arr> => [> 'a'> ]> # start parameter is not provided> Sum> => sum> (arr)> print> (> Sum> )> # start = 10> Sum> => sum> (arr,> 10> )> print> (> Sum> )> |
>
>
Uitgang:
Traceback (most recent call last): File '/home/23f0f6c9e022aa96d6c560a7eb4cf387.py', line 6, in Sum = sum(arr) TypeError: unsupported operand type(s) for +: 'int' and 'str'>
Praktische toepassing
Problemen waarbij we vereisen dat de som wordt berekend om verdere bewerkingen uit te voeren, zoals het vinden van het gemiddelde van getallen.
Python3
numbers> => [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ,> 1> ,> 4> ,> 5> ]> # start = 10> Sum> => sum> (numbers)> average> => Sum> /> len> (numbers)> print> (average)> |
>
>
Uitvoer
3>