funkcia sum() v Pythone

Všade sa vyžaduje súčet čísel v zozname. Python poskytuje vstavanú funkciu sum(), ktorá sčítava čísla v zozname.

Funkcia Sum() v syntaxi Pythonu

Syntax: súčet (opakovateľný, začiatok)

  • opakovateľné: iterovateľné môže byť čokoľvek zo zoznamu, n-tic alebo slovníkov, ale hlavne by to mali byť čísla.
  • začať: tento začiatok sa pripočíta k súčtu čísel v iterácii. Ak v syntaxi nie je zadaný začiatok, predpokladá sa, že je 0.

Možné ďalšie dve syntaxe

súčet (a): a je zoznam , spočíta všetky čísla v zozname a a začne byť 0, takže vráti iba súčet čísel v zozname.
súčet(a, začiatok): toto vráti súčet zoznamu + začiatok Suma

Príklady funkcií Python Sum().

Získajte súčet zoznam v Python .

Python3




numbers> => [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ,> 1> ,> 4> ,> 5> ]> Sum> => sum> (numbers)> print> (> Sum> )> Sum> => sum> (numbers,> 10> )> print> (> Sum> )>

Výkon:

25 35 

Nižšie uvádzame niekoľko príkladov pomocou funkcie súčtu s rôznymi typmi údajov v Pythone na výpočet súčtu údajov v danom vstupe

Funkcia súčtu Pythonu v slovníku

V tomto príklade vytvárame n-ticu 5 čísel a používame suma() na slovník v Pythone.

Python3




my_dict> => {> 'a'> :> 10> ,> 'b'> :> 20> ,> 'c'> :> 30> }> total> => sum> (my_dict.values())> print> (total)>

Výkon :

60 

Časová zložitosť: O(1)
Zložitosť priestoru: O(n)

Funkcia súčtu Pythonu na množine

V tomto príklade vytvárame n-ticu 5 čísel a používame sum() na nastaviť v Pythone.

Python3




my_set> => {> 1> ,> 2> ,> 3> ,> 4> ,> 5> }> total> => sum> (my_set)> print> (total)>

Výkon :

15 

Funkcia súčtu Pythonu na n-tici

V tomto príklade vytvárame n-ticu 5 čísel a používame sum() na násobný v Pythone.

Python3




my_tuple> => (> 1> ,> 2> ,> 3> ,> 4> ,> 5> )> total> => sum> (my_tuple)> print> (total)>

Výkon :

15 

Časová zložitosť: O(1)
Zložitosť priestoru: O(n)

Suma v Pythone s For Loop

V tomto kód najprv definuje zoznam čísel. Potom inicializuje premennú s názvom total na 0. Kód potom iteruje cez zoznam pomocou for slučka, a pre každé číslo v zozname pridá toto číslo k celkovej premennej. Nakoniec kód vytlačí celkovú hodnotu, ktorá je súčtom čísel v zozname.

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)>

Výkon :

The sum of the numbers is: 150 

Časová zložitosť: O(n)
Zložitosť priestoru: O(n)

Chyby a výnimky

TypeError : Táto chyba sa objaví, keď je v poli niečo iné ako čísla zoznam . V uvedenom príklade používame zoznam Python3

Python3




arr> => [> 'a'> ]> # start parameter is not provided> Sum> => sum> (arr)> print> (> Sum> )> # start = 10> Sum> => sum> (arr,> 10> )> print> (> Sum> )>

Výkon :

Traceback (most recent call last): File '/home/23f0f6c9e022aa96d6c560a7eb4cf387.py', line 6, in Sum = sum(arr) TypeError: unsupported operand type(s) for +: 'int' and 'str' 

Praktické uplatnenie

Problémy, pri ktorých vyžadujeme vypočítanie súčtu, aby sme mohli vykonať ďalšie operácie, ako je napríklad zistenie priemeru čísel.

Python3




numbers> => [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ,> 1> ,> 4> ,> 5> ]> # start = 10> Sum> => sum> (numbers)> average> => Sum> /> len> (numbers)> print> (average)>

Výkon

3