An Interest In:
Web News this Week
- April 2, 2024
- April 1, 2024
- March 31, 2024
- March 30, 2024
- March 29, 2024
- March 28, 2024
- March 27, 2024
Python : Excution conditionnel et boucles
Le cours acclr Python est gratuit et sera publi ici sur dev.to. Je publierai un nouvel article tous les deux jours environ. Pour ne rien manquer, vous pouvez me suivre sur twitter : Suivez @EricLeCodeur
Excution conditionnelle
Dans cette section nous verrons comment excuter un bloc de code seulement si une expression est vraie.
Pour ce faire vous devez utiliser linstruction if en respectant la syntaxe suivante :
if {expression}:
bloc de code excuter si expression est vrai
Voici un exemple
if x == 4: print('x est 4')
La premire ligne reprsente la condition.
Les deux petits points ":" la fin de la premire ligne indique le dbut du bloc de code conditionel.
En python, La vrification de lgalit entre deux valeurs doit tre faite avec deux caractres gaux ==
La deuxime ligne reprsente le code excuter si la condition est vraie.
noter que la deuxime ligne commence par 4 espaces blanches. En Python ces espaces sont ncessaires afin dindiquer que cette ligne fait partie du bloc de code.
Il est donc possible dinclure plus dune ligne excuter
if x == 4: print("x est 4") print("fait partie du bloc if")print("Ne fait pas partie du bloc if")
Seules les lignes avec 4 espaces blancs font partie du bloc du if
Loprateur Not !
Parfois il peut tre pratique dexcuter un bloc de code seulement si lexpression nest pas gale une certaine valeur.
if x != 4: print("x n'est pas 4")
Multiples expressions avec loprateur and et or
Il est possible de faire la vrification de plusieurs expressions
Voici deux exemples :
if x == 2 or x == 4: print("x est gale 2 ou 4")
if x > 2 and x < 10: print("x est compris entre 3 et 9")
Linstruction else
Vous venez dapprendre comment excuter du code si une expression est vraie. Sachez quil est galement possible dexcuter du code si lexpression est fausse.
Voici un exemple :
if x == 4: print("x est 4")else: print("x pas gale 4")
Selon le rsultat de lexpression, Python va excuter un des deux blocs de code.
Linstruction elif
Il peut arriver que vous ailliez plusieurs expressions vrifier et que chaque expression doit avoir son propre bloc de code.
if x == 4: print("x est 4")elif x == 6: print("x est 4")else: print("x pas gale 4 ni 6")
Expression sans oprateurs
Voici un exemple valide:
messsage = ""if message: print(message)else: print("Sorry, no message")
Ici le code if message: ne contiens pas doprateur de comparaison. Lexpression sera donc convertie en valeur True/False (Boolean)
Dans le dernier exemple, tant donn que la variable message" est vide, sa valeur Boolean sera False. Rsultat, le code print(Sorry, no message) sera excut
Voici un autre exemple
shipping_fee = 100if shipping_fee: print(f"Shipping fees: {shipping_fee}")else: print("Free shipping")
Dans cet exemple, shipping_fee sera convertie en True car Python convertie tous les nombres qui ne sont pas gaux 0 en True.
Si vous vous demandez quelle sera la valeur en Boolean dune expression, vous pouvez utiliser la fonction bool(expression)
text_num = "0"print(bool(text_num))# True
Dans cet exemple la variable est de type texte et Python convertira en True toutes les variables textes qui ne sont pas vides.
Il est possible dassoci directement une valeur Boolean (True/False) une variable et ensuite de lutiliser dans notre code.
is_active = Trueif is_active: print("User active")else: print("User inactive")
Excution conditionnelle avec syntaxe abrge
Il existe une syntax abrge qui permet dexcuter du code conditionnel avec une seule ligne de code.
price = 100print("C'est chers") if price > 100 else print("Pas chers")
Le mme principe peut sappliquer pour faire une assignation conditionnelle
active_color = default_color if default_color else "blue"
Itrations : Excuter un bloc de code plusieurs reprises
Parfois vous aurez besoin dcrire plusieurs lignes de code qui peuvent sembler rptitives.
Par exemple crire une petite application qui affiche les nombres 1 10
print(1)print(2)print(2)print(4)print(5)print(6)print(7)print(8)print(9)print(10)
Bien que ce code fonctionne, il est clair que ce nest pas du tout efficace car pour chaque ligne de code, seulement le nombre change.
Une meilleure solution serait de faire une boucle avec linstruction for
Linstruction for permet de faire une boucle sur une squence. Il est possible de crer une squence avec la fonction range()
Par exemple, la fonction range(10) va crer la squence suivante :
0 1 2 3 4 5 6 7 8 9
noter que les squences commencent toujours par la position zro
Une fois la squence cre, linstruction for permet de faire une boucle et dexcuter du code pour chaque valeur.
Voici un exemple :
for i in range(10): print(i+1)
Avec ce code on obtient le mme rsultat que notre premier exemple mais beaucoup plus rapide crire et maintenir.
Voici un autre exemple avec une squence un peu plus complexe
for i in range(10, 20, 2): print(i)# 10, 12, 14, 16, 18
La fonction range() permet de spcifier trois paramtres : dpart, fin et step. La valeur de dpart et le step sont optionnels. Si non spcifie, la valeur de dpart sera 0 et le step sera 1.
Boucle un nombre indtermin
Il est possible que vous ne savez pas davance quel sera le nombre ditrations effectuer. Cest pourquoi il existe en Python un autre type de boucle : linstruction while
Linstruction while permet dexcuter du code tant que lexpression est True
Voici un exemple :
key = ""while key != "5": key = input("Enter your selection (5 = Quit): ")
Dans cet exemple, le bloc de code sera excut tant et aussi longtemps que la valeur de key ne sera pas 5.
La fonction break et continue
Il est possible de terminer une boucle immdiatement et sans que la condition soit respecte en utilisant la fonction break()
key = ""while key != "5": key = input("Enter your selection (5 = Quit): ") if key == "6": print("Secret door") break
Dans cet exemple, la fonction break() va terminer la boucle while sans excuter aucun autre code quelle contient.
Il est galement possible de sauter litration en cours avec la fonction continue()
x = 0while x < 5: x += 1 if x == 3: continue print(x)# 1, 2, 4, 5
Dans cet exemple, le nombre 3 ne sera jamais imprim. La fonction continue() renvoie lexcution du code la prochaine itration sans excuter le code restant du bloc.
Boucle dans une String
Il est possible de faire une boucle sur tous les caractres dune String. Voici un exemple :
keycode = "abc123def"for letter in keycode: print(letter)#a#b#c#1#2#3#d#e#f
Conclusion
C'est tout pour aujourd'hui, je publierai un nouvel article tous les deux jours environ. Pour tre sr de ne rien rater vous pouvez me suivre sur twitter : Suivre @EricLeCodeur
Original Link: https://dev.to/ericlecodeur/python-execution-conditionnel-et-boucles-4m4e
Dev To
An online community for sharing and discovering great ideas, having debates, and making friendsMore About this Source Visit Dev To