Finde die Summe der Teilmengen einer Liste in Python

8

Das ist wahrscheinlich sehr einfach und ich übersehe etwas ...

Ich habe eine lange Liste von Ganzzahlen, die in diesem Fall tägliche Besucher einer Website darstellen. Ich möchte eine neue Liste von wöchentlichen Besuchern. Also muss ich Gruppen von sieben aus der ursprünglichen Liste holen, sie summieren und sie zu einer neuen Liste hinzufügen.

Meine Lösung scheint ziemlich rohe Gewalt, unelegant:

%Vor%

Gibt es eine effizientere oder mehr pythische Art, dies zu tun?

    
fitzgeraldsteele 26.05.2011, 03:44
quelle

3 Antworten

10
%Vor%

Oder etwas weniger dicht:

%Vor%

Alternativ mit dem numpy-Modul.

%Vor%

Beachten Sie, dass die Anzahl der Elemente in Besucher ein Vielfaches von 7 sein muss. Außerdem müssen Sie numpy installieren. Allerdings ist es wahrscheinlich auch effizienter als die anderen Ansätze.

Oder für iwertools Code-Bonus:

%Vor%     
Winston Ewert 26.05.2011, 03:54
quelle
0
%Vor%

Ich bin mir nicht sicher, ob das "Python" ist, aber ich liebe wirklich dieses einzeilige Zeug von Python.

Gory Details: Nachschlagewerke

    
Linmic 26.05.2011 04:08
quelle
0

Verwenden von itertools.islice:

%Vor%

Bearbeiten:

oder mit math.fsum:

%Vor%     
riza 26.05.2011 08:44
quelle

Tags und Links