GeeksforGeeks
Adott egy lista, írj egy Python programot, amely a megadott lista minden elemét egy allistává alakítja. Így az egész listát listák listájává alakítjuk.
Példák:
Input : Output : , , ]Input : Output : , , , , ]
Eljárás #1 : Naiv megközelítés
Egy másik lista ‘res’ és egy for ciklus használata. A Python split() metódusát használva kivesszük a lista minden egyes elemét magából a listából, és hozzácsatoljuk a ‘res’-hez. Végül visszaadjuk a ‘res’ listát. A módszer egyik hátránya, hogy egész számú listával nem működik, mivel az ‘int’ objektumnak nincs ‘split’ attribútuma.
def
extractDigits(lst):
res
=
for
el
in
lst:
sub
=
el.split(
', '
)
res.append(sub)
return
(res)
lst
=
print
(extractDigits(lst))
, , ]
Megközelítés #2 : Listamegértés
A listamegértés hatékony megközelítés, mivel nem használ fel extra helyet. A lista minden egyes ‘el’ elemét egyszerűen hozzácsatolja a kimeneti listához.
def
extractDigits(lst):
return
for
el
in
lst]
lst
=
print
(extractDigits(lst))
, , ]
Eljárás #3 : Python map()
A megadott kód leképezi az el függvényt: az adott ‘lst’ iterábilis minden egyes elemére. Ennélfogva minden egyes elemet maga is listaként ad ki.
def
extractDigits(lst):
return
list
(
map
(
lambda
el:, lst))
lst
=
print
(extractDigits(lst))
, , ]