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>