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
Libérer: 2024-12-21 00:26:09
original
864 Les gens l'ont consulté

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
Copier après la connexion

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
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal