Finden Sie die Summe der Teilmengen einer Liste in python

Dies ist wahrscheinlich sehr einfach und ich bin etwas Blick...

Ich habe eine lange Liste von ganzen zahlen, in diesem Fall vertreten täglichen Besucher auf eine website. Ich möchte eine neue Liste der wöchentlich Besucher. Also ich brauche, um Gruppen von sieben von der ursprünglichen Liste, Summe Sie, und fügen Sie zu einer neuen Liste.

Meine Lösung scheint ziemlich brute-force, unelegant:

numweeks = len(daily) / 7
weekly = []
for x in range(numweeks):
    y = x*7
    weekly.append(sum(visitors[y:y+7]))

Ist es, eine effizientere, oder mehr pythonic Weg, dies zu tun?

  • Dies ist eigentlich eine gute Frage für codereview.stackexchange.com, die speziell für die Verbesserung der code, der arbeitet, um es schneller/eleganter.
  • Vielen Dank...wusste nicht, dass über stackexchange Seite. Es ist schwer zu wissen, welches geeignet ist für die Frage, vor allem da es so viele in diesen Tagen. Plus, dies scheint auf alle der Augäpfel, so dass ich immer das Gefühl, das original ist am besten. 🙂
  • Nichts falsch mit diesem code ist es unkompliziert und kommuniziert seine Absicht gut. Ich würde ändern Sie einfach die var-Namen, um etwas mehr beschreibend als x und y, aber sonst ist es vorzuziehen, jedes Verständnisses-hack
  • Der Unterschied ist, dass dort haben Sie die Aufmerksamkeit gezielt von Menschen, die gerne Lesen anderer Leute code, um herauszufinden, wie Dinge besser zu machen.
Schreibe einen Kommentar