Ésta es probablemente muy simple y estoy pasando por alto algo ...Encuentra la suma de subconjuntos de una lista en Python
que tienen una larga lista de números enteros, en este caso en representación de visitantes diarios a un sitio web. Quiero una nueva lista de visitantes semanales. Entonces necesito obtener grupos de siete de la lista original, sumarlos y agregarlos a una nueva lista.
Mi solución parece bastante fuerza bruta, poco elegante:
numweeks = len(daily)/7
weekly = []
for x in range(numweeks):
y = x*7
weekly.append(sum(visitors[y:y+7]))
¿Hay una manera más eficiente, o más Pythonic de hacer esto?
Esto es realmente una buena pregunta para codereview.stackexchange.com, que es sp ecológicamente para mejorar el código que funciona para hacerlo más rápido/más elegante. –
Gracias ... no sabía sobre ese sitio stackexchange. Es difícil saber cuál es el apropiado para cada pregunta, especialmente dado que hay tantos en estos días. Además, este parece tener todos los ojos, así que siempre siento que el original es el mejor. :) – fitzgeraldsteele
Nada de malo en este código: es sencillo y comunica bien su intención. Simplemente cambiaría los nombres de las var a algo más descriptivo que 'x' y' y', pero de lo contrario, esto es preferible a cualquier truco basado en la comprensión –