Arguments par défaut en Python

PythonPythonBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Imaginez les sables de l'Égypte ancienne, les pyramides se dressant majestueusement au-dessus, projetant de longues ombres sur un paysage imprégné de mystère et d'histoire. Dans ce laboratoire, nous entreprenons une exploration à l'intérieur d'une chambre nouvellement découverte au sein de la Grande Pyramide de Khéops. Les hiéroglyphes peints sur les murs de la chambre racontent l'histoire d'une déesse perdue dont les pouvoirs seront restaurés une fois que son avatar aura été convoqué avec l'incantation appropriée. On dit que cette déesse avait le pouvoir de conférer sagesse et connaissance, en particulier dans l'art arcan du codage Python.

Notre objectif est de décrypter l'incantation nécessaire pour convoquer l'avatar de cette déesse en résolvant des défis Python présentés dans la chambre. Pour ce faire, nous devons maîtriser l'utilisation des arguments par défaut dans les fonctions Python - un concept aussi éternel que les pyramides elles-mêmes.

Créez une fonction avec des arguments par défaut

Dans cette étape, nous allons créer une fonction qui nous aidera à déverrouiller le premier sceau de la chambre de la déesse. Les fonctions Python peuvent avoir des arguments par défaut, qui sont utilisés si aucune valeur spécifique n'est fournie lors de l'appel de la fonction. Entrons dans le vif du sujet en créant une fonction qui génère un sort antique avec des niveaux de pouvoir par défaut.

Maintenant, ouvrez ~/project/incantation.py avec votre éditeur de texte favori et définissez une fonction nommée cast_spell qui accepte deux paramètres : spell (une chaîne de caractères) et power_level (un entier avec une valeur par défaut de 5).

Exemple de code dans incantation.py :

def cast_spell(spell, power_level=5):
    return f"Invoking {spell} with a power level of {power_level}!"

## Testez la fonction en l'appelant avec et sans spécifier le power_level
print(cast_spell('Heka'))
print(cast_spell('Seshat', power_level=9))

Exécutez votre code pour voir les sorts être invoqués.

python3 incantation.py

Sortie attendue :

Invoking Heka with a power level of 5!
Invoking Seshat with a power level of 9!

Gérer plusieurs arguments par défaut

Ensuite, nous allons travailler avec une fonction qui prend plusieurs arguments par défaut pour dénouer le second sceau. Nous allons créer une fonction qui décrit les offrandes à apporter à la déesse.

Toujours dans le répertoire ~/project, ajoutez une nouvelle fonction à notre fichier incantation.py appelée make_offering, qui prendra trois paramètres : food (par défaut "grain"), incense (par défaut "encens"), et gemstone (par défaut "lapis lazuli").

Exemple de code dans incantation.py :

def make_offering(food="grain", incense="frankincense", gemstone="lapis lazuli"):
    return f"Offrant {food}, {incense}, et {gemstone} pour plaire aux dieux."

## Testez la fonction avec des arguments par défaut et personnalisés
print(make_offering())
print(make_offering(food="dates", gemstone="turquoise"))

Exécutez le fichier mis à jour :

python3 incantation.py

Sortie attendue :

Offrant grain, encens, et lapis lazuli pour plaire aux dieux.
Offrant dates, encens, et turquoise pour plaire aux dieux.

Sommaire

Dans ce laboratoire, nous avons plongé dans le pouvoir des arguments par défaut de Python à travers le décor d'une aventure dans les pyramides de l'ancienne Égypte. Non seulement avez-vous appris à définir des fonctions avec des paramètres par défaut et à les personnaliser selon vos besoins, mais vous avez également exploité la magie d'une déesse égyptienne en combinant la syntaxe Python avec l'attrait de l'égyptologie.

En accomplissant ces tâches, vous avez acquis une compétence précieuse qui vous sera très utile dans la rédaction de code Python flexible et réutilisable. Maintenant que vous avez maîtrisé les arguments par défaut, vous êtes prêt à découvrir encore plus de secrets dans le monde du Python - le langage aussi énigmatique que les pyramides, mais aussi accessible que le désert ouvert sous le ciel clair et lumineux de la lune.