GeeksforGeeks
Donné une liste de chaînes de caractères, écrivez un programme Python pour convertir chaque élément de la liste donnée en une sous-liste. Ainsi, convertir la liste entière en une liste de listes.
Exemples:
Input : Output : , , ]Input : Output : , , , , ]
Approche #1 : Approche naïve
Utiliser une autre liste ‘res’ et une boucle for a. En utilisant la méthode split() de Python, nous extrayons chaque élément de la liste sous la forme de la liste elle-même et l’ajoutons à ‘res’. Enfin, nous retournons ‘res’. Un inconvénient de cette méthode est qu’elle ne fonctionne pas avec une liste d’entiers car l’objet ‘int’ n’a pas d’attribut ‘split’.
def
extractDigits(lst):
res
=
for
el
in
lst:
sub
=
el.split(
', '
)
res.append(sub)
return
(res)
lst
=
print
(extractDigits(lst))
, , ]
Approche #2 : Compréhension de liste
La compréhension de liste est une approche efficace car elle n’utilise pas d’espace supplémentaire. Pour chaque élément ‘el’ dans la liste, elle ajoute simplement à la liste de sortie.
def
extractDigits(lst):
return
for
el
in
lst]
lst
=
print
(extractDigits(lst))
, , ]
Approche #3 : Python map()
Le code donné mappe la fonction el : pour chaque élément de l’itérable ‘lst’ donné. D’où la sortie de chaque élément comme une liste elle-même.
def
extractDigits(lst):
return
list
(
map
(
lambda
el:, lst))
lst
=
print
(extractDigits(lst))
, , ]