durchläuft eine Liste mit einer if-Anweisung

8

Ich habe eine Liste, die ich mit einer "for" -Schleife durchlaufen habe, und führe jeden Wert in der Liste durch eine if-Anweisung aus. Mein Problem ist, dass ich versuche, das Programm nur etwas tun zu lassen, wenn alle Werte in der Liste die if-Anweisung passieren, und wenn es nicht passiert, möchte ich, dass es sich zum nächsten Wert in der Liste bewegt. Derzeit wird ein Wert zurückgegeben, wenn ein einzelnes Element in der Liste die if-Anweisung übergibt. Irgendwelche Ideen, um mich in die richtige Richtung zu weisen?

    
Lance Collins 28.05.2011, 21:28
quelle

4 Antworten

9

Python bietet Ihnen viele Möglichkeiten, mit einer solchen Situation umzugehen. Wenn Sie Beispielcode haben, können wir das für Sie eingrenzen.

Eine Option, die Sie sich ansehen können, ist der Operator all :

%Vor%

Sie können auch nach der Länge der gefilterten Liste suchen:

%Vor%

Wenn Sie ein for Konstrukt verwenden, können Sie die Schleife vorzeitig beenden, wenn Sie auf einen negativen Test stoßen:

%Vor%

Die obige Funktion test gibt False für den ersten Wert zurück, der beispielsweise 2 oder niedriger ist, während True nur dann zurückgegeben wird, wenn alle Werte größer als 2 sind.

    
Martijn Pieters 28.05.2011, 21:36
quelle
3

Vielleicht könnten Sie es mit einer for ... else -Anweisung versuchen.

%Vor%     
Cédric Julien 28.05.2011 21:57
quelle
0

Sie müssen Ihre gesamte Liste durchlaufen und den Zustand prüfen, bevor Sie versuchen, etwas anderes mit den Daten zu machen, also benötigen Sie zwei Schleifen (oder verwenden Sie eine eingebaute Schleife, die die Schleife für Sie ausführt, wie alle ()). Von diesem Codepad mit nichts zu ausgefallen, Ссылка

%Vor%     
Rob Neuhaus 28.05.2011 21:37
quelle
0

Sie müssen immer vorsichtig sein, wenn Sie Elemente aus Ihrer Liste löschen, während Sie versuchen, sie zu durchlaufen.

Wenn Sie nicht löschen, hilft das:

%Vor%

jetzt, wenn value_position_pairs leer ist, bist du fertig. Wenn nicht, können Sie i um 1 erhöhen, um zum nächsten Wert zu gelangen, oder die fehlerhaften Werte über ihre Position im Array durchlaufen.

    
robert king 28.05.2011 23:09
quelle

Tags und Links