2016-04-06 5 views
0

Ich habe folgende namedtuple:Wie kann ich Counter-Objekt mit dem Namen Tupeln

ErrorProbeData = namedtuple('ErrorProbeData', 
    ['project_name', 'probe_id', 'number_invalid_votes', 'masker_id']) 

Wie ich von Counter die Tupel von 'project_name' Feld zählen kann? Die Tupel befinden sich in einer Liste.

Antwort

1

können Sie einen generator expression verwenden nur den Projektnamen Werte an den Zähler zu füttern:

Counter(epd.project_name for epd in list_of_epds) 

Named Tupel sind nicht hier besondere; Dies würde für jedes Problem gelten, bei dem Sie nach einem bestimmten Attribut (Objekte), Schlüssel (Zuordnungen) oder Index (Folgen) zählen möchten. Sie müssen Schleifen und Extrahieren, und ein Generatorausdruck hilft dabei, eine Zwischenliste dafür zu vermeiden.

Verwandte Themen