Nehmen wir an, ich habe eine Klasse C
mit Attributen a
.
Was ist der beste Weg, um die Summe a
aus einer Liste von C
in Python zu erhalten?
Ich habe den folgenden Code ausprobiert, aber ich weiß, dass dies nicht der richtige Weg ist:
for c in c_list:
total += c.a
python
list
attributes
sum
jsj
quelle
quelle
Wenn Sie nach anderen Maßen als der Summe suchen, z. B. Mittelwert / Standardabweichung, können Sie NumPy verwenden und Folgendes tun:
mean = np.mean([c.a for c in c_list]) sd = np.std([c.a for c in c_list])
quelle
Ich hatte eine ähnliche Aufgabe, aber meine bestand darin, eine Zeitdauer als Ihr Attribut zu summieren
c.a
. Ich kombinierte dies mit einer anderen Frage, die hier gestellt wurdesum((c.a for c in cList), timedelta())
Weil, wie im Link erwähnt,
sum
ein Startwert benötigt wird.quelle
Verwenden Sie das eingebaute
statistics
Modul:import statistics statistics.mean((o.val for o in my_objs))
quelle