Préface
Cet article traite des syntaxes for…else
et while…else
de Python, qui sont l'une des fonctionnalités grammaticales les moins couramment utilisées et les plus mal comprises de Python.
Les boucles telles que for
et while
en Python ont une branche else
facultative (similaire à l'instruction if
et à l'instruction try
), qui est exécutée une fois l'itération de la boucle terminée normalement . En d'autres termes, si nous ne sortons pas de la boucle autrement que par la voie normale, alors la branche else
sera exécutée. Autrement dit, il n'y a aucune instruction break
, aucune instruction return
ou aucune exception ne se produit dans le corps de la boucle.
Jetons un coup d’œil à des exemples d’utilisation détaillés.
1. Utilisation conventionnelle si autrement
x = True if x: print 'x is true' else: print 'x is not true'
2. Sinon, utilisation du raccourci
Le if else
ici peut être utilisé comme opérateur ternaire.
mark = 40 is_pass = True if mark >= 50 else False print "Pass? " + str(is_pass)
3. Utilisez-le avec le mot-clé for
lorsque ce qui suit sont remplies. Lorsque cela se produit, le bloc de code sous else
sera exécuté :
1. Les instructions de la boucle for
sont exécutées
2. Les instructions de la boucle for
Boucle break
Non interrompue par l'instruction
# 打印 `For loop completed the execution` for i in range(10): print i else: print 'For loop completed the execution' # 不打印 `For loop completed the execution` for i in range(10): print i if i == 5: break else: print 'For loop completed the execution'
4. Utiliser avec le mot-clé while
else
Semblable à ce qui précède, le bloc de code sous
while
1. Les instructions dans la boucle
sont exécuté
while
2. Les instructions dans la boucle break
ne sont pas interrompues par l'instruction
# 打印 `While loop execution completed` a = 0 loop = 0 while a <= 10: print a loop += 1 a += 1 else: print "While loop execution completed" # 不打印 `While loop execution completed` a = 50 loop = 0 while a > 10: print a if loop == 5: break a += 1 loop += 1 else: print "While loop execution completed"
5. Utilisé avec try except
try except
Lorsqu'il est utilisé avec else
, si aucune exception n'est levée, les instructions dans
file_name = "result.txt" try: f = open(file_name, 'r') except IOError: print 'cannot open', file_name else: # Executes only if file opened properly print file_name, 'has', len(f.readlines()), 'lines' f.close()
Résumé
Un résumé de l'utilisation des instructions else dans la boucle en Python C'est fondamentalement la fin. Cet article a encore une certaine valeur de référence pour que tout le monde puisse apprendre ou utiliser Python. J'espère qu'il pourra être utile à tout le monde. Si vous avez des questions, vous pouvez laisser un message pour communiquer. Pour plus d'articles liés au résumé de l'utilisation de else dans les instructions de boucle Python, veuillez faire attention au site Web PHP chinois !