&TS&‐&Spécialité*ISN&
Cours&Python&:&Séquences&rétitives& Page&n°1/4&
ISN*‐*Informatique*et*Sciences*du*Numérique&
!
&
LANGAGE&PYTHON&:&STRUCTURES&REPETITIVES&
!
!
!
Une!structure&répétitive!ou!boucle!permet!de!répéter&une&portion&de&code.!
!
!
1&‐&BOUCLE&WHILE&(TANT&QUE)&
!
!
!
!
!
!
!
!
!
while&"#$%&'&#$!(!
!)*#+!%,-$.'/0+'&#$.!
10&'2!%0!3/#4/5662!
!
Tant&que!la!condition!est!vraie&(True)!le!bloc!d'instructions!est!exécuté.!Le!cycle!continu!jusqu'à!ce!que!
la!condition!soit!fausse!(False)!:!on!passe!alors!à!la!suite!du!programme.!
!!
Exemple&1&:&table&de&multiplication&par&8&avec&la&boucle&while&
!
3/&$'7895:*2!%2!60*'&3*&+5'&#$!35/!;8<!
+#63'20/!=!>!! ! ! ! #"initialisation"de"la"variable"de"comptage"
?@&*2!+#63'20/!A=!>B!(!! ! "
!#"ce"bloc"est"exécuté"tant"que"la"condition"(compteur<=10)"est"vraie"
!3/&$'7+#63'20/C8D!;!=8C+#63'20/D;<!
!+#63'20/!E=!>! ! #"incrémentation"du"compteur":"compteur"="compteur"+"1"
!
#"on"sort"de"la"boucle"
3/&$'78F@!G#&*H!I8<!
&
JJJ!!
95:*2!%2!60*'&3*&+5'&#$!35/!;!
>!D!;!=!;!
K!D!;!=!>L!
M!D!;!=!KN!
N!D!;!=!MK!
O!D!;!=!NB!
L!D!;!=!N;!
P!D!;!=!OL!
;!D!;!=!LN!
Q!D!;!=!PK!
>B!D!;!=!;B!
F@!G#&*H!I&
!
Condition&
faux!
vrai!
!
Bloc&d’instructions!
&TS&‐&Spécialité*ISN&
Cours&Python&:&Séquences&rétitives& Page&n°2/4&
!
Exemple&2&&:&&affichage&de&l’heure&courante&avec&la&boucle&while&
!
&63#/'!'&62!!! ! ! #"importation"du"module"time"
R0&''2/"="S$S! ! ! #"initialisation"de"la"réponse"
?@&*2!R0&''2/"I="S#S!(!! ! ! !
#"ce"bloc"est"exécuté"tant"que"la"condition"(quitter"!="'o')"est"vraie"
!3/&$'78T20/2!+#0/5$'28C'&62U.'/V'&627SWT(WX(W1S<<!
!R0&''2/"=!&$30'78Y#0*2Z[G#0.!R0&''2/!*2!3/#4/5662!7#\$<!]8<!
!
#"on"sort"de"la"boucle"
3/&$'78^!:&2$'_'8<!
!
JJJ!!
T20/2!+#0/5$'2!>M(OL(KO!
T20/2!+#0/5$'2!>M(OL(MB!
T20/2!+#0/5$'2!>M(OL(MM!
^!:&2$'_'!
!
!
!
!
!
2&‐&BOUCLE&FOR&
!
for&`*`62$'!in!.`R02$+2!(!
!)*#+!%,-$.'/0+'&#$.!
10&'2!%0!3/#4/5662!
!
!!
La!séquence&est&parcourue&élément&par&élément.!L’élément!peut!être!de!tout!type!:!entier,!caractère,!
élément!d’une!liste…!
!
L’utilisation!de!la!boucle&for!est!intéressante!si!le!nombre!de!boucles!à!effectuer!est!connu&à&l’avance.!
!
Exemple&3&:&table&de&multiplication&par&9&avec&la&boucle&for&
!
3/&$'7895:*2!%2!60*'&3*&+5'&#$!35/!Q8<!
V#/!+#63'20/!&$!/5$427>C>B<!(!! ! "
!3/&$'7+#63'20/C8D!Q!=8C+#63'20/DQ<!
!!
#"on"sort"de"la"boucle"
3/&$'78F'!G#&*H!I8<!
!
!
!
La! valeur& initiale! de! l’élément! compteur! est! égale! à! 1.! On! exécute& la& boucle& tant& que! l’élément!
compteur!est!inférieur&à&10.!
JJJ!!
95:*2!%2!60*'&3*&+5'&#$!35/!Q!
>!D!Q!=!Q!
K!D!Q!=!>;!
M!D!Q!=!KP!
N!D!Q!=!ML!
O!D!Q!=!NO!
L!D!Q!=!ON!
P!D!Q!=!LM!
;!D!Q!=!PK!
Q!D!Q!=!;>!
F'!G#&*H!I!
!
!
&TS&‐&Spécialité*ISN&
Cours&Python&:&Séquences&rétitives& Page&n°3/4&
Exemple&4&:&parcourt&d’une&chaîne&de&caractères&avec&une&boucle&for&
!
+@5&$2!=!8ab'@#$8!
V#/!*2''/2!&$!+@5&$2!(!! ! #"lettre"est"la"variable"d’itération"
!3/&$'7*2''/2<!
!!
#"on"sort"de"la"boucle"
3/&$'78c&$!%2!*5!:#0+*28<!
!
La!variable!lettre!est!initialisée&avec&le&premier&élément&de&la&séquence!('I').!Le!bloc!d'instructions!est!
alors!exécuté.!Puis!la!variable!lettre!est&mise&à&jour&avec&le&second&élément!de!la!séquence!('n')!et!le!
bloc! d'instructions! à! nouveau! exécuté...! La! boucle& est& exécutée& jusqu’à& ce& on& arrive& au& dernier&
élément!de!la!séquence!('e').!
!
!
JJJ!!
a!
b!
'!
@!
#!
$!
c&$!%2!*5!:#0+*2!
!
!
!
!
Exemple&5&:&parcourt&d’une&liste&avec&une&boucle&for&
!
*&.'2!=!d8a&2//28C8e03#$'8CLPUOC>Pf!
V#/!2*262$'!&$!*&.'2!(!! ! #"element"est"la"variable"d’itération"
!3/&$'72*262$'<!
!!
#"on"sort"de"la"boucle"
3/&$'78c&$!%2!*5!:#0+*28<!
!
La! variable! liste! est! initialisée& avec& le& premier& élément& de& la& séquence! ('Pierre').! La! boucle! est!
exécutée!jusqu’à!ce!on!arrive!au!dernier!élément!de!la!séquence!('17').!
!
JJJ!!
a&2//2!
e03#$'!
!
LPUO!
>P!
c&$!%2!*5!:#0+*2!
!
!
!
!
!
!
!
!
!
!
!
&TS&‐&Spécialité*ISN&
Cours&Python&:&Séquences&rétitives& Page&n°4/4&
3&‐&INSTRUCTION&BREAK&
L'instruction!break!provoque!une!sortie!immédiate!d'une!boucle!while&ou!d'une!boucle!for.!
!
Exemple&6&:&instruction&break&
!
&63#/'!'&62!!! ! ! #"importation"du"module"time"
?@&*2!9/02!(!! ! ! #"l’expression"est"toujours"vraie!
!3/&$'78T20/2!+#0/5$'28C'&62U.'/V'&627SWT(WX(W1S<<!
!R0&''2/"=!&$30'78Y#0*2Z[G#0.!R0&''2/!*2!3/#4/5662!7#\$<!]8<!
!&V!R0&''2/"=!S#S!(!
!!:/25g!
!
#"on"sort"de"la"boucle"
3/&$'78^!:&2$'_'8<!
!
L'expression!True&est&toujours&vraie!:!il!s’agit!d’une!boucle&sans&fin.!L'instruction!break!est!donc!le!seul!
moyen!de!sortir!de!la!boucle.!
!
JJJ!!
T20/2!+#0/5$'2!BQ(BN(BK!
^!:&2$'_'!
!
!
!
1 / 4 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !