Arguments positionnels de taille variable
Entraînons-nous avec des arguments positionnels de taille variable. Votre tâche est de définir la fonction sort_types(). Elle prend un nombre variable d’arguments positionnels et vérifie pour chacun s’il s’agit d’un nombre ou d’une chaîne de caractères. L’élément contrôlé est ensuite ajouté soit à la liste nums, soit à la liste strings. Finalement, la fonction renvoie un tuple contenant ces listes.
Utilisez la fonction Python intégrée isinstance() pour vérifier si un objet est d’un certain type (p. ex. isinstance(1, int) renvoie True) ou d’un des types (p. ex. isinstance(5.65, (int, str)) renvoie False).
Les types à utiliser dans cette tâche sont int, float et str.
Cet exercice fait partie du cours
<cours>S’exercer aux questions d’entretien de code en Python</cours>Instructions de l’exercice
- Définissez la fonction avec un nombre arbitraire d’arguments.
- Vérifiez si
argest un nombre et ajoutez-le ànumssi nécessaire. - Vérifiez si
argest une chaîne et ajoutez-la àstringssi nécessaire.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Define the function with an arbitrary number of arguments
def sort_types(____):
nums, strings = [], []
for arg in args:
# Check if 'arg' is a number and add it to 'nums'
if ____:
nums.____
# Check if 'arg' is a string and add it to 'strings'
elif ____:
strings.____
return (nums, strings)
print(sort_types(1.57, 'car', 'hat', 4, 5, 'tree', 0.89))