match : Filtrage par motifs structurels

match-case

La structure de contrôle match case a été introduite avec Python 3.10. Elle réalise une ou plusieurs actions en fonction de la valeur (ou du motif contenu) d'une donnée de type séquence, ou des types de base de Python.

Exemple

l'utilisateur entre une valeur entière entre 1 et 3 et on affiche le choix

1
num_choix = int(input("Votre choix "))
2
match num_choix:
3
    case 1:
4
        print("Choix 1")
5
    case 2:
6
        print("Choix 2")
7
    case 3:
8
        print("Choix 3")

Si l’utilisateur entre une valeur non prévue rien ne s'affiche. On peut utiliser l'attrape-tout pour effecteur une action dans ce cas :

1
num_choix = int(input("Votre choix "))
2
match num_choix:
3
    case 1:
4
        print("Choix 1")
5
    case 2:
6
        print("Choix 2")
7
    case 3:
8
        print("Choix 3")
9
    case _:
10
        print("Choix non prévu")

Remarque

On peut faire des actions plus complexe avec la structure match-case qu'on ne décrira pas ici.