Ignorer les itérations en Python
J'ai une boucle en cours, mais il y a la possibilité que des exceptions soient soulevées à l'intérieur de la boucle. Ceci bien sûr arrêterait mon programme tous ensemble. Pour éviter que j'attrape les exceptions et les gère. Mais le reste de l'itération s'exécute même si une exception s'est produite. Y a-t-il un mot-clé à utiliser dans ma clause except:
pour simplement ignorer le reste de l'itération en cours?
88
demandé sur
jilles de wit
2009-02-14 22:48:04
6 réponses
for i in iterator:
try:
# Do something.
pass
except:
# Continue to next iteration.
continue
41
répondu
Alex McBride
2009-02-14 19:52:29
Quelque chose comme ça?
for i in xrange( someBigNumber ):
try:
doSomethingThatMightFail()
except SomeException, e:
continue
doSomethingWhenNothingFailed()
16
répondu
S.Lott
2012-12-03 12:26:05
Exemple pour Continuer:
number = 0
for number in range(10):
number = number + 1
if number == 5:
continue # continue here
print('Number is ' + str(number))
print('Out of loop')
Sortie:
Number is 1
Number is 2
Number is 3
Number is 4
Number is 6 # Note: 5 is skipped!!
Number is 7
Number is 8
Number is 9
Number is 10
Out of loop
6
répondu
MedImage
2018-04-04 08:31:52
Pour ce cas d'utilisation spécifique, l'utilisation de try..except..else
est la solution la plus propre, la clause else
sera exécutée si aucune exception n'a été levée.
Remarque: La clause else
doit suivre toutes les clauses except
for i in iterator:
try:
# Do something.
except:
# Handle exception
else:
# Continue doing something
2
répondu
Istvan Jeno Veres
2016-02-16 19:31:13