Znate li kako ukloniti stavke s popisa tijekom ponavljanja? Ako niste, ne brinite jer ja sam ovdje da vam objasnim isto. Ovdje ćemo vidjeti prilično velik broj primjera kako bismo bili jasniji u tom pogledu. Dakle, počnimo bez više čekanja.
brojevi = (20, 24, 26, 29, 31, 33, 37, 38)
Sada, pretpostavimo da trebamo izbrisati sve neparne brojeve s popisa. Onda, što ćemo učiniti? Morat ćemo napisati petlju za ponavljanje popisa brojeva, a zatim dati uvjet za provjeru neparnih brojeva i nakon toga ih ukloniti.
numbers = (20, 24, 26, 29, 31, 33, 37, 38) for x in numbers : if x%2 == 0 : continue else : numbers.remove(x) print(numbers)
# Output : (29, 31, 33, 37)
Sada, kada smo vidjeli jednu metodu za ovo. Pogledajmo daljnje metode za to.
Uklanjanje elemenata s popisa pomoću razumijevanja popisa
Možemo jednostavno iterirati preko liste; a nakon toga odaberite različite elemente koje želimo prikazati na temelju određenog uvjeta koristeći razumijevanje popisa. U ovom primjeru ćemo vidjeti kako to učiniti na istom popisu bez izrade njegove kopije; ili bez stvaranja novog popisa.
numbers = (20, 24, 26, 29, 31, 33, 37, 38) numbers = (num for num in numbers if num% 2 != 0) print(numbers)
# Output : (29, 31, 33, 37)
Dakle, vidimo da možemo lako ukloniti stavke s popisa dok ponavljamo korištenjem razumijevanja popisa. U ovom primjeru vidimo kako možemo izvršiti zadatak implementacije razumijevanja popisa u istom popisu; tj. bez kreiranja nove liste što se uglavnom događa u uobičajenim slučajevima.
Korištenje filter() za uklanjanje elemenata s popisa tijekom ponavljanja
Za početak, filter() uzima dva parametra; prvi parametar je funkcija; a drugi parametar je lista s koje se vrši željena operacija nad elementima.
Što filter() radi? Iterirati će svaki element na popisu; a zatim primijeniti željenu funkciju na elemente liste. Nakon toga vraća elemente za koje funkcija vrijedi. Stoga možemo koristiti funkciju filter() za uklanjanje elemenata s popisa tijekom ponavljanja. Pogledajmo s istim popisom brojeva.
numbers = (20, 24, 26, 29, 31, 33, 37, 38) numbers = list(filter(lambda num : num%2 != 0, numbers)) print(numbers)
# Output : (29, 31, 33, 37)
Korištenje while petlje za iskakanje i dodavanje elemenata
Možemo ukloniti elemente s liste dok ponavljamo po njoj; korištenjem while petlje za pep i zatim dodavanje elemenata. Korištenjem while petlje ponavljamo svaki element i zatim ekstrahiramo elemente jedan po jedan. Nakon toga provjerava uvjete i dodaje ih novom popisu. Dakle, nastavimo.
Prije toga idemo s primjerom da naučimo o pop() i append(). Pop() je metoda koju možemo koristiti za uklanjanje elementa na određenom indeksu.
Metoda append() dodaje stavku na postojeći popis bez izmjene u već postojećim elementima.
numbers = list(20, 24, 26, 29, 31, 33, 37, 38) # creating an empty temporary list "odd" to append the elements odd = [] while numbers : num = numbers.pop() if num%2 != 0 : odd.append(num) # now we need to reverse the list of elements because the odd list contains reversed elements since, pop removes the elements starting from the last index numbers = list(reversed(odd.copy())) print(numbers)
# Output : (29, 31, 33, 37)
SUMIRATI !!
Dakle, sada znamo da imamo razne metode koje možemo koristiti za uklanjanje elemenata s danog popisa; dok ga ponavljam. Stoga možemo sa sigurnošću reći da možemo koristiti razumijevanje popisa, obrnutu iteraciju; filtar(), lambda(), while petlja i funkcija uklanjanja. Po mom mišljenju, razumijevanje popisa je najprikladnija metoda. Međutim, na vama je da sada odaberete opciju koja vam odgovara. Nadajući se da vam je ovaj članak bio odličan uvid. Do sljedećeg puta, vidimo se!! Ipak, ne zaboravite staviti svoje komentare.