Ich habe die folgende ListeZurück Liste der Elemente in der Liste größer als ein Wert
j=[4,5,6,7,1,3,7,5]
Was ist der einfachste Weg, [5,5,6,7,7]
wobei die Elemente in j größer oder gleich 5 zurückzukehren?
Ich habe die folgende ListeZurück Liste der Elemente in der Liste größer als ein Wert
j=[4,5,6,7,1,3,7,5]
Was ist der einfachste Weg, [5,5,6,7,7]
wobei die Elemente in j größer oder gleich 5 zurückzukehren?
können Sie eine Liste Verständnis verwenden zu filtern:
j2 = [i for i in j if i >= 5]
Wenn Sie wirklich wollen, dass es wie Ihr Beispiel sortiert war, können Sie sorted
verwenden:
j2 = sorted(i for i in j if i >= 5)
oder rufen Sie sort
am letzten Liste:
j2 = [i for i in j if i >= 5]
j2.sort()
Ich wusste nicht, wo die Syntax, schön! – ismail
@ İsmail 'cartman' Dönmez: Das liegt wahrscheinlich daran, dass es ein SyntaxError ist :) –
@Ismail Es ist eigentlich 'if', ich habe meine Meinung verloren, als ich diese Antwort schrieb :). Ich bin froh, dass du diesen Kommentar hinterlassen hast, oder ich hätte es wahrscheinlich nicht bemerkt. –
Sie können ein Listenverständnis verwenden:
[x for x in j if x >= 5]
Eine Liste Verständnis ist ein einfacher Ansatz:
j2 = [x for x in j if x >= 5]
Alternativ können Sie filter
für die exakt gleiche Ergebnis verwenden:
j2 = filter(lambda x: x >= 5, j)
Beachten Sie, dass die ursprüngliche Liste j
unmodifizierten ist.
Da Ihre gewünschte Ausgabe sortiert wird, müssen Sie auch sortieren:
>>> j=[4, 5, 6, 7, 1, 3, 7, 5]
>>> sorted(x for x in j if x >= 5)
[5, 5, 6, 7, 7]
und was wird das schnellste sein? – Oren