Introduction
En Python, parfois, nous devons convertir une valeur en une liste. Cependant, si la valeur est déjà une liste, nous ne voulons pas créer une liste imbriquée. Dans ce défi, vous devrez créer une fonction qui prend une valeur et la renvoie sous forme de liste, sauf si elle est déjà une liste ou un autre itérable.
Cast to List
Écrivez une fonction cast_list(val) qui prend une valeur en argument et la renvoie sous forme de liste. Si la valeur est déjà une liste, renvoyez-la telle quelle. Si la valeur n'est pas une liste mais est itérable, renvoyez-la sous forme de liste. Si la valeur n'est pas itérable, renvoyez-la sous forme d'une liste à un seul élément.
def cast_list(val):
return list(val) if isinstance(val, (tuple, list, set, dict)) else [val]
cast_list('foo') ## ['foo']
cast_list([1]) ## [1]
cast_list(('foo', 'bar')) ## ['foo', 'bar']
Résumé
Dans ce défi, vous avez appris à créer une fonction qui convertit une valeur en une liste si elle n'est pas déjà une liste ou un autre itérable. Vous avez utilisé isinstance() pour vérifier si la valeur est itérable et l'avez renvoyée en utilisant list() ou l'avez encapsulée dans une liste en conséquence.