le parcours d'une liste avec une instruction if
J'ai une liste que je suis une boucle dans une boucle "for" et suis en cours d'exécution chaque valeur de la liste à l'aide d'une instruction if. Mon problème est que je suis en train de seulement avoir le programme à faire quelque chose si toutes les valeurs dans la liste passe de l'instruction if et si l'on ne passe pas, je le veux pour se déplacer le long à la valeur suivante dans la liste. Actuellement, il est de retour d'une valeur si un seul élément dans la liste passe de l'instruction if. Toutes les idées pour me faire remarquer dans le bon sens?
Exemple de code toujours nous permet de vous aider à mieux.
Poster votre code.
vous ne précisez pas quel est votre objectif avec la fonction; par exemple, si la fonction a besoin de faire quelque chose avec l'état intermédiaire
jetez un oeil à cette stackoverflow.com/questions/6009589/...
Poster votre code.
sort
et comparez-les avec un connus src, les ressorts de l'esprit, mais comme les autres l'ont dit, poster du code, de sorte que nous pouvons soi comment votre liste ressemble!vous ne précisez pas quel est votre objectif avec la fonction; par exemple, si la fonction a besoin de faire quelque chose avec l'état intermédiaire
jetez un oeil à cette stackoverflow.com/questions/6009589/...
OriginalL'auteur Lance Collins | 2011-05-28
Vous devez vous connecter pour publier un commentaire.
Python vous donne un tas de possibilités pour faire face à une telle situation. Si vous avez un code d'exemple, nous pourrions étroite que pour vous.
Une option que vous pourriez regarder est la
all
opérateur:Vous pouvez également vérifier la longueur de la liste filtrée:
Si vous utilisez un
for
construire, vous pouvez sortir de la boucle à l'avance si vous venir à travers de test négatif:La
test
fonction ci-dessus retournera False sur la première valeur de 2 ou moins, par exemple, alors qu'il va retourner True seulement si toutes les valeurs étaient plus grand que 2.OriginalL'auteur Martijn Pieters
Vous pourriez peut-être essayer avec un
pour ... else
déclaration.OriginalL'auteur Cédric Julien
Vous avez besoin d'une boucle sur l'ensemble de votre liste et de vérifier l'état avant d'essayer de faire autre chose avec les données, de sorte que vous besoin de deux boucles (ou d'utiliser certains construite en qui ne la boucle pour vous, comme tous les()). À partir de ce codepad avec rien de trop de fantaisie, http://codepad.org/pKfT4Gdc
OriginalL'auteur Rob Neuhaus
Vous devez toujours être prudent si vous êtes en supprimant des éléments de votre liste alors que vous êtes en train de parcourir.
Si vous n'êtes pas la suppression de cette aide:
maintenant, si value_position_pairs est vide vous avez terminé. Si non, vous pouvez augmenter la je par de passer à la valeur suivante ou itérer à travers l'échec de valeurs à l'aide de leur position dans le tableau.
OriginalL'auteur robert king