single
Challenge: Arguments Optionnels
Glissez pour afficher le menu
Rappel : lors de la définition d'une fonction, certains arguments peuvent être rendus optionnels en leur attribuant une valeur par défaut. Si l'appelant ne fournit pas de valeur, la fonction utilise la valeur par défaut.
def add_user(name, age, role="user", status="active"):
# Function body here
nameetagesont obligatoires – doivent toujours être fournis ;roleetstatussont optionnels – si omis, leurs valeurs par défaut sont utilisées.
Rappel : les arguments optionnels doivent toujours être placés après tous les arguments obligatoires.
add_user("Alice", 28) # role="user", status="active" by default
add_user("Bob", 25, role="admin", status="inactive") # Overriding the defaults
12345678def greet(name, greeting="Hello"): print(f"{greeting}, {name}!") # Using only the required argument greet("Alice") # Providing both arguments greet("Bob", greeting="Hi")
Glissez pour commencer à coder
Vous travaillez avec un système de gestion d'utilisateurs simple. Votre objectif est d'implémenter une fonction add_user() qui ajoute de nouveaux utilisateurs ou met à jour les utilisateurs existants dans une liste globale appelée users_db.
La variable users_db est une liste de dictionnaires. Chaque dictionnaire représente un utilisateur et se présente ainsi :
users_db = [
{"name": "Alice", "age": 28, "role": "admin", "status": "active"}
]
- Définir une fonction
add_user(name, age, role="user", status="active"). - Vérification des utilisateurs existants : Parcourir les dictionnaires dans
users_db. Vérifier si la clé"name"dans un dictionnaire correspond à l'argumentnamepassé à votre fonction. - Si l'utilisateur existe : * Mettre à jour son dictionnaire existant avec les nouvelles valeurs de
age,roleetstatus.
- Retourner la chaîne :
"User {name} updated successfully!".
- Si l'utilisateur n'existe pas (la boucle se termine sans trouver de correspondance) :
- Créer un nouveau dictionnaire représentant l'utilisateur avec les valeurs fournies pour
name,age,roleetstatus. - Ajouter ce nouveau dictionnaire à
users_db. - Retourner la chaîne :
"User {name} added successfully!".
Solution
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion