python équivalent à l'instruction Case / Switch
python ne fournit pas de syntaxe dédiée pour les instructions de cas / commutateur comme d'autres langages de programmation. Cependant, il existe plusieurs approches alternatives pour atteindre des fonctionnalités similaires.
Utilisation de la correspondance de motifs (python 3.10 et ci-dessus)
De la version 3.10, Python introduit correspondant à la correspondance. Il vous permet de faire correspondre différents modèles et d'exécuter des blocs de code correspondants.
def http_error(status): match status: case 400: return "Bad request" case 404: return "Not found" case 418: return "I'm a teapot" case _: # Default case return "Something's wrong with the internet"
en utilisant des dictionnaires pour les versions Python antérieures
avant Python 3.10, une solution de contournement courante est d'utiliser des dictionnaires pour mapper les valeurs d'entrée à la fonction correspondante blocs.
# Define the function blocks def zero(): print("You typed zero.\n") def sqr(): print("n is a perfect square\n") def even(): print("n is an even number\n") def prime(): print("n is a prime number\n") # Map inputs to the function blocks options = {0: zero, 1: sqr, 4: sqr, 9: sqr, 2: even, 3: prime, 5: prime, 7: prime} # Invoke the equivalent switch block options[num]()
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3