Maison >développement back-end >Tutoriel Python >Comment puis-je remplacer une instruction Switch en Python ?

Comment puis-je remplacer une instruction Switch en Python ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-21 00:26:09939parcourir

How Can I Replace a Switch Statement in Python?

Alternatives à l'instruction Switch en Python

Dans la programmation Python, il est nécessaire de renvoyer des valeurs prédéfinies distinctes basées sur un index d'entrée spécifié. Alors que les instructions switch ou case répondent généralement à ce problème dans d'autres langages, Python ne dispose pas d'une instruction switch dédiée. Cette question explore les solutions Python appropriées pour combler ce vide.

Solution recommandée : instruction match-case

Python 3.10 a introduit l'instruction match-case, offrant un remplacement robuste pour une instruction switch. Sa syntaxe est la suivante :

def f(x):
    match x:
        case 'a':
            return 1
        case 'b':
            return 2
        case _:
            return 0  # Default case if x not found

L'instruction match-case prend en charge des fonctionnalités avancées qui s'étendent au-delà de cet exemple de base. Pour plus d'informations, reportez-vous à la documentation officielle de Python.

Solution alternative : mappage de dictionnaire

Pour les versions Python antérieures à 3.10, un dictionnaire peut servir d'alternative :

def f(x):
    return {
        'a': 1,
        'b': 2,
    }.get(x, 0)  # Default case

Cette approche mappe des valeurs d'entrée spécifiques à leurs valeurs de retour correspondantes. Si la valeur d'entrée n'existe pas dans le dictionnaire, la valeur de retour par défaut 0 est utilisée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn