Python werte filtern?

3 Antworten

Von Experte mihisu bestätigt
>>> l= [(23323,), (123232,), (2321212,)]
>>> sum(i[0] for i in l)
2467767

Was auch geht:

>>> sum(sum(i) for i in l)
2467767

Wobei das vor allem interessant wäre, wenn die Tupel selbst entsprechend viele Komponenten besitzen.

a = [(23323,), (123232,), (2321212,)] 
ergebnis = a[0][0] + a[1][0] + a[2][0]
print(ergebnis)

Hallo,

Du kannst ganz einfach erst auf den mit der Indexzahl auf die einzelnen Werte zugreifen und so addieren.


PHLMinions 
Fragesteller
 03.10.2022, 22:33

Hey,
das Problem ist das meine Tabelle mit solchen Werten über 100 beträgt, das ist nur eine kleine Vorschau.
Weißt du wie ich alle direkt addieren kann?

Liebe Grüße

0
Chiron287  03.10.2022, 22:41
@PHLMinions

Dann kannst du die Liste in einer for-schleife durchlaufen.

a =   [(23323,), (123232,), (2321212,)]
ergebnis = 0
for i in range(len(a)):
    ergebnis = ergebnis + a[i][0]
print(ergebnis)

falls die Tupel auch manchmal mehrere Werte enthalten dann kannst du diese mit noch einer for-schleife auch addieren:

a =   [(23323,), (123232,2334,), (2321212,)]
ergebnis = 0
for i in range(len(a)):
    for i2 in range(len(a[i])):
        ergebnis = ergebnis + a[i][i2]
print(ergebnis)

Liebe Grüße

0

Wenn du die Werte ja schon hast verstehe ich nicht was der Filter soll, aber Addition ist doch einfach die Zahlen zusammenfallen.

Schon mal mit + probiert?

https://www.w3schools.com/python/python_howto_add_two_numbers.asp

Mathematik grundrechenarten gibt es bestimmt auch Seiten fals du damit noch Probleme hast😜


PHLMinions 
Fragesteller
 03.10.2022, 22:52

Die Werte sind ja aus meiner Datenbank, ich habe über 100 Einträge davon.
Die Werte werden so ausgegeben, und + mit Klammern und Komma klappt natürlich nicht.

0
NackterGerd  04.10.2022, 08:33
@PHLMinions
Klammern und Komma klappt natürlich nicht.

Das ist doch ein Array. ICH dachte du willst nur die Inhalte addieren?

Natürlich die einzelnen Array Werte mit +

Oder du nimmst die sum() funktion.

Die Werte sind ja aus meiner Datenbank, ich habe über 100 Einträge davon

Schon klar

Du musst halt den Wert jedes Elements Addieren

Klar ist nur nicht welche Werte von den 100 du Filtern möchtest und welche von den 100 du addieren möchtest und welche nicht.

1