Ho una lista di numeri e voglio ottenere il numero di volte in cui un numero appare in un elenco che soddisfa determinati criteri. Posso usare una comprensione di lista (o una comprensione di lista in una funzione) ma mi chiedo se qualcuno ha un modo più breve.numero di valori in un elenco maggiore di un certo numero
# list of numbers
j=[4,5,6,7,1,3,7,5]
#list comprehension of values of j > 5
x = [i for i in j if i>5]
#value of x
len(x)
#or function version
def length_of_list(list_of_numbers, number):
x = [i for i in list_of_numbers if j > number]
return len(x)
length_of_list(j, 5)
c'è una versione ancora più condensata?
+1 Questa è davvero una buona soluzione. – jamylak
@jamylak, perché è meglio di quello di Greg Hewgill? Sebbene sia interessante e corretto, sembra molto meno intuitivo e meno ovvio per chi legge il codice. – TJD
@TJD Non ho detto che era meglio, ma mi piace di più. – jamylak