GeeksforGeeks

paź 13, 2021
admin

Dając listę ciągów znaków, napisz program w Pythonie, który przekształci każdy element podanej listy w podlistę. W ten sposób przekształca całą listę w listę list.

Przykłady:

Input : Output : , , ]Input : Output : , , , , ]

Podejście #1 : Podejście naiwne

Użyj innej listy 'res’ i pętli for. Używając metody split() Pythona wyodrębniamy każdy element z listy w postaci samej listy i dołączamy go do 'res’. Na koniec zwracamy 'res’. Jedną wadą tej metody jest to, że nie działa ona z listami integer, ponieważ obiekt 'int’ nie posiada atrybutu 'split’.

def extractDigits(lst):
res =
for el in lst:
sub = el.split(', ')
res.append(sub)
return(res)
lst =
print(extractDigits(lst))



Wyjście:

, , ]

Podejście #2 : List comprehension

List comprehension jest wydajnym podejściem, ponieważ nie wykorzystuje dodatkowego miejsca. Dla każdego elementu 'el’ na liście, po prostu dołącza go do listy wyjściowej.

def extractDigits(lst):
return for el in lst]
lst =
print(extractDigits(lst))



Wyjście:

, , ]

Podejście #3 : Python map()

Podany kod odwzorowuje funkcję el: dla każdego elementu podanej iterowalnej 'lst’. Stąd wyprowadza każdy element jako samą listę.

def extractDigits(lst):
return list(map(lambda el:, lst))
lst =
print(extractDigits(lst))



Wyjście:

, , ]

Znaczniki artykułów :

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.