Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
March 24, 2022 03:08 am GMT

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

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To