Sąrašo skaičių suma privaloma visur. Python pateikia įmontuotą funkciją sum(), kuri apibendrina sąraše esančius skaičius.
Sum() funkcija Python sintaksėje
Sintaksė: suma (kartojama, pradžia)
- kartojamas: iterable gali būti bet kas sąrašas , eilutės arba žodynai , bet svarbiausia, kad tai būtų skaičiai.
- pradžia: ši pradžia pridedama prie iteracijos skaičių sumos. Jei pradžia nenurodyta sintaksėje, laikoma, kad ji yra 0.
Galimos dar dvi sintaksės
suma (a): a yra sąrašas , jis susumuoja visus sąrašo a skaičius ir pradeda būti 0, todėl grąžinama tik sąraše esančių skaičių suma.
suma(a, pradžia): tai grąžina sąrašo + pradžios sumą Suma
Python Sum() funkcijos pavyzdžiai
Gaukite sumą sąraše Python .
Python3
numbers> => [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ,> 1> ,> 4> ,> 5> ]> Sum> => sum> (numbers)> print> (> Sum> )> Sum> => sum> (numbers,> 10> )> print> (> Sum> )> |
>
>
Išvestis:
25 35>
Žemiau pateikiame keletą pavyzdžių, naudojant sumos funkciją su skirtingais duomenų tipais Python, kad būtų galima apskaičiuoti duotoje įvestyje esančių duomenų sumą
- Sumos funkcija ant a Žodynas
- Sumos funkcija ant a Nustatyti
- Sumos funkcija ant a Tuple
- Suma Python ir For Kilpa
- Klaida ir išimtys
- Praktinis pritaikymas
Python sumos funkcija žodyne
Šiame pavyzdyje sukuriame 5 skaičių seką ir naudojame suma() ant žodynas Python.
Python3
my_dict> => {> 'a'> :> 10> ,> 'b'> :> 20> ,> 'c'> :> 30> }> total> => sum> (my_dict.values())> print> (total)> |
>
>
Išvestis:
60>
Laiko sudėtingumas: O(1)
Erdvės sudėtingumas: O(n)
Python sumos funkcija rinkinyje
Šiame pavyzdyje mes sukuriame 5 skaičių seką ir naudojame sum() rinkinys Python.
Python3
my_set> => {> 1> ,> 2> ,> 3> ,> 4> ,> 5> }> total> => sum> (my_set)> print> (total)> |
>
>
Išvestis:
15>
Python sumos funkcija kortelėje
Šiame pavyzdyje mes sukuriame 5 skaičių seką ir naudojame sum() kortele Python.
Python3
my_tuple> => (> 1> ,> 2> ,> 3> ,> 4> ,> 5> )> total> => sum> (my_tuple)> print> (total)> |
>
>
Išvestis:
15>
Laiko sudėtingumas: O(1)
Erdvės sudėtingumas: O(n)
Suma Python su For Loop
Šiuo atveju kodas pirmiausia apibrėžia skaičių sąrašą. Tada jis inicijuoja kintamąjį, vadinamą total, į 0. Tada kodas kartojasi per sąrašą, naudodamas for kilpa, ir kiekvienam sąrašo skaičiui prideda tą skaičių prie bendro kintamojo. Galiausiai kodas atspausdina bendrą vertę, kuri yra sąraše esančių skaičių suma.
Python3
SIM kortelė įdėta, bet nėra „Android“ paslaugos
# 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)> |
>
>
Išvestis:
The sum of the numbers is: 150>
Laiko sudėtingumas: O(n)
Erdvės sudėtingumas: O(n)
Klaida ir išimtys
Tipo klaida : ši klaida iškyla, kai yra kas nors, išskyrus skaičius sąrašą . Pateiktame pavyzdyje mes naudojame sąrašą Python3
Python3
arr> => [> 'a'> ]> # start parameter is not provided> Sum> => sum> (arr)> print> (> Sum> )> # start = 10> Sum> => sum> (arr,> 10> )> print> (> Sum> )> |
>
>
Išvestis:
Traceback (most recent call last): File '/home/23f0f6c9e022aa96d6c560a7eb4cf387.py', line 6, in Sum = sum(arr) TypeError: unsupported operand type(s) for +: 'int' and 'str'>
Praktinis pritaikymas
Problemos, kai reikia apskaičiuoti sumą, kad galėtume atlikti tolimesnes operacijas, pavyzdžiui, sužinoti skaičių vidurkį.
Python3
numbers> => [> 1> ,> 2> ,> 3> ,> 4> ,> 5> ,> 1> ,> 4> ,> 5> ]> # start = 10> Sum> => sum> (numbers)> average> => Sum> /> len> (numbers)> print> (average)> |
>
>
Išvestis
3>