Boucle while en Python

Python3 循环语句Instructions de boucle Python3


whileest une instruction de boucle conditionnelle en Python ; tant que la condition est True, elle continuera d'exécuter le corps de la boucle.

etforDifférent,whilela boucle est plus adaptée aux scénarios où le nombre d'itérations est incertain et où vous devez sortir en fonction des conditions.

Explication du terme: whileCela signifie « while... », indiquant une exécution continue tant que la condition est vraie.


Syntaxe de base et paramètres

Format de syntaxe

while 条件:
    # 循环体(必须缩进)
    语句1
    语句2
    ...
else:
    # 可选,当循环“正常结束”时执行
    语句1
    语句2
    ...

Description de la syntaxe

  • Condition: L'expression conditionnelle évaluée avant chaque itération de la boucle.
  • Logique d'exécution: Lorsqu'elle est True, exécuter le corps de la boucle, puis réévaluer la condition.
  • Condition de sortie: Lorsque la condition est False, quitter la boucle.

Clause else

  • Facultatif: Similaire à for, while peut aussi avoir un else.
  • Moment d'exécution: Il s'exécute lorsque la condition devient False (sortie normale).


Exemples

Exemple 1 : Utilisation de base

Exemples

# Boucle while de base
count = 0

while count < 5:
    print(count)
    count += 1

print("Boucle terminée")

Sortie attendue :

0
1
2
3
4
循环结束

Explication du code :

  1. Continuer à boucler tant que count < 5.
  2. Chaque itération incrémente count de 1.
  3. Lorsque count = 5, la condition devient False et la boucle se termine.

Exemple 2 : Validation de la saisie utilisateur

Exemples

# Simuler la validation de la saisie utilisateur
# Remarque : En fonctionnement réel, input() attendra la saisie de l'utilisateur

# Exemple simple : devinez le nombre
secret = 7
guess = 0

while guess != secret:
    guess = int(input("Veuillez saisir un nombre (7) : "))
    if guess < secret:
        print("Trop petit")
    elif guess > secret:
        print("Trop grand")

print("Félicitations, vous avez deviné !")

Sortie attendue :

请输入数字 (7): 5
太小了
请输入数字 (7): 9
太大了
请输入数字 (7): 7
恭喜,猜对了!

La boucle while est souvent utilisée dans des scénarios qui nécessitent une répétition jusqu'à ce qu'une condition soit remplie.

Exemple 3 : Calcul de la factorielle

Exemples

# Calculer la factorielle
n = 5
result = 1

while n > 0:
    result *= n
    n -= 1

print(f"5! = {result}")  # Sortie : 5! = 120

# Somme cumulative
total = 0
i = 1
while i <= 100:
    total += i
    i += 1
print(f"1+2+...+100 = {total}")  # Sortie : 5050

Sortie attendue :

5! = 120
1+2+...+100 = 5050

Lorsque vous utilisez des boucles while pour des calculs numériques, faites attention à éviter les boucles infinies.

Exemple 4 : Structure while-else

Exemples

# while-else
count = 0

while count < 3:
    print(count)
    count += 1
else:
    print("La boucle s'est terminée normalement")

print("---")

# else ne s'exécute pas lors d'un break
count = 0
while count < 5:
    if count == 3:
        break
    print(count)
    count += 1
else:
    print("Cette ligne ne sera pas imprimée")

Sortie attendue :

0
1
2
循环正常结束
---
0
1
2

Le else dans while-else ne s'exécute pas lorsque la boucle est interrompue par break.

Exemple 5 : Boucle infinie et sortie

Exemples

# Les boucles infinies doivent être utilisées avec précaution
# L'exemple ci-dessous utilise break pour sortir

# Simuler un système de menu
while True:
    print("\n"=== Menu ===")
    print("1. Voir le solde")
    print("2. Déposer")
    print("3. Retirer")
    print("4. Quitter")

    choice = input("Veuillez choisir : ")

    if choice == "1":
        print("Solde : 1000 yuan")
    elif choice == "2":
        print("Fonction de dépôt")
    elif choice == "3":
        print("Fonction de retrait")
    elif choice == "4":
        print("Merci d'avoir utilisé")
        break  # Sortir de la boucle
    else:
        print("Choix invalide")

print("Programme terminé")

Les boucles infinies combinées à break peuvent mettre en œuvre des flux de contrôle complexes.

Sortie attendue :

=== 菜单 ===
1. 查看余额
2. 存款
3. 取款
4. 退出
请选择: 1
余额: 1000元

=== 菜单 ===
1. 查看余额
2. 存款
3. 取款
4. 退出
请选择: 

Python3 循环语句Instructions de boucle Python3

Autres extensions