Ce face sum()
sum() adună elementele unei liste, tuplu sau generator, pornind de la start (implicit 0). Merge foarte bine cu o expresie generator: sum(p * c for p, c in cos).
Din Python 3.12, sum() adună numerele zecimale cu un algoritm mai precis; math.fsum() rămâne varianta cea mai exactă. Pentru a lipi texte folosește "".join(), nu sum().
Parametri
| Parametru | Descriere |
|---|---|
iterabil |
Colecția de numere. |
start |
Opțional. Valoarea de la care pornește suma. Implicit 0. |
Ce returnează
Suma, ca număr.
Exemple
Exemplul 1: Total și medie
note = [9, 7, 10, 8]
print(sum(note))
print(sum(note) / len(note))
print(sum(range(1, 101)))
Rezultat
34
8.5
5050
Exemplul 2: Totalul unui coș
cos = [("pâine", 4.5, 2), ("lapte", 7, 3), ("cafea", 32.9, 1)]
total = sum(pret * cantitate for _, pret, cantitate in cos)
print(f"Total: {total:.2f} lei")
Rezultat
Total: 62.90 lei
Greșeli frecvente
- Încerci
sum(["a", "b"])și primeștiTypeError. Pentru texte folosește"".join(lista). - Dai numere ca text dintr-un fișier. Transformă-le întâi:
sum(int(x) for x in valori).
Comenzi înrudite
min() și max(): Returnează cel mai mic sau cel mai mare element dintr-o colecție sau dintre mai multe valori.len(): Returnează numărul de elemente dintr-o colecție sau numărul de caractere dintr-un text.math.fsum(): Adună numere zecimale cu precizie maximă, fără erorile de rotunjire acumulate.statistics.mean(), fmean(), geometric_mean(), harmonic_mean(): Media aritmetică, geometrică și armonică a unei liste de numere.