95 votes

Retourne la liste des éléments de la liste supérieure à une valeur

j'ai la liste suivante

 j=[4,5,6,7,1,3,7,5]

Quelle est la façon la plus simple de renvoyer [5,5,6,7,7] étant les éléments de j supérieurs ou égaux à 5 ?

133voto

Michael Mrozek Points 44120

Vous pouvez utiliser une compréhension de liste pour la filtrer :

 j2 = [i for i in j if i >= 5]

Si vous voulez réellement qu'il soit trié comme l'était votre exemple, vous pouvez utiliser sorted :

 j2 = sorted(i for i in j if i >= 5)

ou appelez sort sur la liste finale :

 j2 = [i for i in j if i >= 5]
j2.sort()

18voto

Justin Ardini Points 6273

Une compréhension de liste est une approche simple :

 j2 = [x for x in j if x >= 5]

Alternativement, vous pouvez utiliser filter pour exactement le même résultat :

 j2 = filter(lambda x: x >= 5, j)

Notez que la liste d'origine j n'est pas modifiée.

13voto

sepp2k Points 157757

Vous pouvez utiliser une compréhension de liste :

 [x for x in j if x >= 5]

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X