Všude je vyžadován součet čísel v seznamu. Krajta poskytuje vestavěnou funkci sum(), která sčítá čísla v seznamu.
Funkce Sum() v syntaxi Pythonu
Syntaxe: součet (opakovatelný, začátek)
- iterovatelné: iterovatelné může být cokoliv ze seznamu , n-tic nebo slovníků, ale hlavně by to měla být čísla.
- Start : tento začátek se přičte k součtu čísel v iterovatelné. Pokud není v syntaxi uveden start, předpokládá se, že je 0.
Možné další dvě syntaxe
součet (a): a je seznam , sečte všechna čísla v seznamu a a začíná být 0, takže vrací pouze součet čísel v seznamu.
součet(a, začátek): to vrátí součet seznamu + začátek Součet
Příklady funkcí Python Sum().
Získejte součet seznam v Krajta .
Python3
numbers>=> [>1>,>2>,>3>,>4>,>5>,>1>,>4>,>5>]> Sum> => sum>(numbers)> print>(>Sum>)> Sum> => sum>(numbers,>10>)> print>(>Sum>)> |
git rebase
>
>
Výstup:
25 35>
Níže uvádíme několik příkladů pomocí funkce součtu s různými datovými typy v Pythonu k výpočtu součtu dat v daném vstupu
- Funkce součtu na a Slovník
- Funkce součtu na a Soubor
- Funkce součtu na a Tuple
- Součet v Pythonu s For Smyčka
- Chyby a výjimky
- Praktická aplikace
Funkce součtu Pythonu ve slovníku
V tomto příkladu vytváříme n-tici 5 čísel a používáme součet() na slovník v Pythonu.
Python3
my_dict>=> {>'a'>:>10>,>'b'>:>20>,>'c'>:>30>}> total>=> sum>(my_dict.values())> print>(total)> |
>
>
Výstup :
60>
Časová složitost: O(1)
Složitost prostoru: Na)
Funkce součtu v Pythonu na množině
V tomto příkladu vytváříme n-tici 5 čísel a používáme sum() na soubor v Pythonu.
Python3
my_set>=> {>1>,>2>,>3>,>4>,>5>}> total>=> sum>(my_set)> print>(total)> |
>
>
Výstup :
15>
Pythonská funkce součtu na n-tici
V tomto příkladu vytváříme n-tici 5 čísel a používáme sum() na tuple v Pythonu.
Python3
my_tuple>=> (>1>,>2>,>3>,>4>,>5>)> total>=> sum>(my_tuple)> print>(total)> |
>
>
Výstup :
15>
Časová složitost: O(1)
Složitost prostoru: Na)
Součet v Pythonu s For Loop
V tomto kód nejprve definuje seznam čísel. Poté inicializuje proměnnou nazvanou total na 0. Kód pak iteruje seznamem pomocí for smyčka, a pro každé číslo v seznamu přidá toto číslo k celkové proměnné. Nakonec kód vytiskne celkovou hodnotu, která je součtem čísel v seznamu.
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ýstup :
The sum of the numbers is: 150>
Časová složitost: Na)
Složitost prostoru: Na)
Chyby a výjimky
TypeError : Tato chyba se objeví, když je v poli něco jiného než čísla seznam . V uvedeném příkladu používáme seznam Python3
Python3
arr>=> [>'a'>]> # start parameter is not provided> Sum> => sum>(arr)> print>(>Sum>)> # start = 10> Sum> => sum>(arr,>10>)> print>(>Sum>)> |
>
>
Výstup :
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á aplikace
Problémy, kdy potřebujeme vypočítat součet pro další operace, jako je zjištění průměru čísel.
Python3
numbers>=> [>1>,>2>,>3>,>4>,>5>,>1>,>4>,>5>]> # start = 10> Sum> => sum>(numbers)> average>=> Sum>/>len>(numbers)> print> (average)> |
>
>
Výstup
3>