GeeksforGeeks
Genom en lista med strängar, skriv ett Pythonprogram för att konvertera varje element i den givna listan till en underlista. På så sätt omvandlas hela listan till en lista av listor.
Exempel:
Input : Output : , , ]Input : Output : , , , , ]
Angreppssätt #1 : Naivt angreppssätt
Använd en annan lista ”res” och en for a loop. Med hjälp av metoden split() i Python extraherar vi varje element från listan i form av själva listan och lägger till den i ’res’. Slutligen returnerar vi ”res”. En nackdel med denna metod är att den inte fungerar med en lista med heltal eftersom objektet ”int” inte har något attribut ”split”.
def
extractDigits(lst):
res
=
for
el
in
lst:
sub
=
el.split(
', '
)
res.append(sub)
return
(res)
lst
=
print
(extractDigits(lst))
, , ]
Metod nr 2: Listförståelse
Listförståelse är en effektiv metod eftersom den inte tar extra utrymme i anspråk. För varje element ”el” i listan läggs det helt enkelt till i utdatalistan.
def
extractDigits(lst):
return
for
el
in
lst]
lst
=
print
(extractDigits(lst))
, , ]
Angreppssätt #3 : Python map()
Den givna koden mappar funktionen el: för varje objekt i den givna iterabeln ”lst”. Därmed ges varje element ut som en lista i sig själv.
def
extractDigits(lst):
return
list
(
map
(
lambda
el:, lst))
lst
=
print
(extractDigits(lst))
, , ]