ich habe nun eine Liste erstellt, in der 3 jeweils 2-Tupel enthalten sind mit dem Namen der Firma und der Mitarbeiterzahl:
Code: Alles auswählen
liste = [ ('Firma A', 25) , ('Firma B', 60) , ('Firma C', 70) ]
Code: Alles auswählen
liste = [ ('Firma A', 25) , ('Firma B', 60) , ('Firma C', 70) ]
Code: Alles auswählen
tupel = ('Firma A' , 25)
>>> tupel[1]
25
Code: Alles auswählen
>>> liste
[('Firma B', 25), ('Firma C', 40)]
>>> liste[1]
('Firma C', 40)
Code: Alles auswählen
>>> liste =[('Firma B', 25), ('Firma C', 40)]
>>> liste[1]
('Firma C', 40)
>>> liste[1][1]
40
Code: Alles auswählen
In [2]: liste = [("Firma A", 25), ("Firma B", 60), ("Firma C", 70)]
In [3]: from operator import itemgetter
In [4]: snd = itemgetter(1)
In [5]: sum(map(snd, liste))
Out[5]: 155
Code: Alles auswählen
In [4]: snd = itemgetter(1)
Code: Alles auswählen
Prelude> let liste = [("Firma A", 25), ("Firma B", 60), ("Firma C", 70)]
Prelude> sum $ map snd liste
155
Code: Alles auswählen
In [5]: firmen = [("Firma A", 25), ("Firma B", 60), ("Firma C", 70)]
In [6]: sum(firma[1] for firma in firmen)
Out[6]: 155
Code: Alles auswählen
In [7]: sum(sum(attr for attr in firma if isinstance(attr, (int, float))) for firma in firmen)
Out[7]: 155
Code: Alles auswählen
In [2]: sum(m for _, m in firmen)
Out[2]: 155
Hui... die haben tatsächlich ein Built-in für so etwas? Krasse Sache!derdon hat geschrieben:Hyperion: Ich hab mich da von Haskell inspirieren lassen:
Code: Alles auswählen
_2 = itemgetter(1)
Code: Alles auswählen
summe = 0
for item in liste:
summe += item[1]
summe
> 155
Code: Alles auswählen
>>> liste[0][1]
25
>>> liste[1][1]
40
Code: Alles auswählen
liste = [ ('Firma A', 25) , ('Firma B', 60) , ('Firma C', 70) ]
for e in liste:
print(liste[1][1]+liste[0][1])
Code: Alles auswählen
liste = [ ('Firma A', 25) , ('Firma B', 60) , ('Firma C', 70) ]
summe = 0
for elemente in liste:
summe = elemente[1] + summe
print(summe)
Code: Alles auswählen
>>>
25
85
155
>>>