La comprensione degli elenchi crea sempre un altro elenco, quindi non è utile combinarli (ad esempio per fornire un numero singolo). Inoltre, non c'è modo di fare un compito nella comprensione delle liste, a meno che tu non sia super subdolo.
L'unica volta che avessi mai visto usando list comprehensions come utile per un metodo di somma è se solo si desidera includere valori specifici nella lista, o se non si dispone di un elenco di numeri:
list = [1,2,3,4,5]
product = [i for i in list if i % 2 ==0] # only sum even numbers in the list
print sum(product)
o un altro esempio ":
# list of the cost of fruits in pence
list = [("apple", 55), ("orange", 60), ("pineapple", 140), ("lemon", 80)]
product = [price for fruit, price in list]
print sum(product)
modo Super subdolo per fare un incarico in una lista di comprensione
dict = {"val":0}
list = [1, 2, 3]
product = [dict.update({"val" : dict["val"]*i}) for i in list]
print dict["val"] # it'll give you 6!
... ma questo è orribile :)
Possibile duplicato di [Qual è la funzione Python come sum() ma per la moltiplicazione? prodotto()?] (http://stackoverflow.com/questions/595374/whats-the-python-function-like-sum-but-for-multiplication-product) –