Usuń żaden z listy Python

Usuń żaden z listy Python

Listy służą do przechowywania danych różnych typów, a dane te mogą być bezpośrednio wykorzystywane do analizy danych lub do celów przetwarzania danych. „Brak” na liście może powodować poważne dwuznaczności w wyniku tych operacji, co nie jest tym, czego chcesz, czy ty? Cóż, ten przewodnik wykorzystuje różne metody i podejścia do usunięcia wszystkich wartości „brak” z listy.

Poniżej wymieniono wszystkie różne rozwiązania, które można użyć do usunięcia braku z listy w Python:

  • Rozwiązanie 1: Za pomocą metody remove () za pomocą metody __Contains __ ()
  • Rozwiązanie 2: Korzystanie ze zrozumienia listy z kondycjonowaniem IF
  • Rozwiązanie 3: Za pomocą metody filtr () do usuwania wartości Brak z listy

Rozwiązanie 1: Za pomocą metody remove () za pomocą metody __Contains __ ()

Ilekroć użytkownik chce usunąć element, pierwszą metodą, która przychodzi na myśl. Jednak metody usuwania nie można użyć do usuwania wszystkich/wielu wartości Brak z listy. Ponieważ metoda remove () usuwa tylko pierwszą instancję elementu z listy.

Aby to zademonstrować, weź następujący kod:

Listvar = [69,22,65, brak, Brak, 123 6789, brak]
Listvar.Usuń (brak)
Drukuj (ListVar)

Wykonanie tego kodu przyniesie następujący wynik na terminalu twojego komputera:

Wyjście potwierdza, że ​​tylko pierwsza instancja „Brak” została usunięta. Aby usunąć wszystkie instancje „Brak” z listy, użyj pętli When wraz z metodą __Contains __ ():

Listvar = [69,22,65, brak, Brak, 123 6789, brak]
podczas Listvar.__Contains __ (brak):
Listvar.Usuń (brak)
Drukuj (ListVar)

W tym fragmencie kodu pętla While działa, aż na liście nie będzie więcej instancji „Brak”. Po wykonaniu tego kodu, daje następujący wynik na terminalu:

Dane wyjściowe potwierdza, że ​​na liście nie można znaleźć więcej „brak”, co oznacza, że ​​wszystkie zostały pomyślnie usunięte.

Rozwiązanie 2: Korzystanie ze zrozumienia listy z kondycjonowaniem IF

Innym sposobem usunięcia „brak” z listy jest użycie rozumienia listy, aby przejść przez każdy element, porównywanie go z „brakiem” poprzez kwartację IF i umieszczenie wartości nie-none na osobnej liście.

Aby usunąć brak z listy za pomocą tej metody, weź następujący fragment kodu:

Listvar = [69,22,65, brak, Brak, 123 6789, brak]
newList = []
dla x w ListVar:
Jeśli x nie jest żadnym:
Nowa lista.Dodatek (x)
Drukuj („Oryginalna lista:”, ListVar)
Drukuj („Nowa lista:”, NewList)

Po wykonaniu tego kodu daje następujący wynik na terminalu twojego komputera:

Wyjście potwierdza, że ​​nie ma wartości „brak” na nowej liście.

Rozwiązanie 3: Za pomocą metody filtr () do usuwania wartości Brak z listy

Metodę Filter () można również użyć do usunięcia „brak” z listy, ale używanie jej normalnego może powodować pewne problemy. Metoda Filter () uważa wartość „0” za „Brak” i usuwa ją również z listy. Aby to zademonstrować, weź następujący kawałek kodu:

Listvar = [69,0,22,65,0, brak, brak, 123 6789, brak]
res = lista (filtr (brak, listvar))
Drukuj („Oryginalna lista:”, ListVar)
Drukuj („Lista po filtrze:”, res)

Po wykonaniu tego kodu wytworzy on następujący wynik na terminalu:

Ze wyjścia można wyraźnie zaobserwować, że metoda filtra () usunęła również wartość „0” z listy.

Prawidłowym sposobem użycia metody Filter () w celu usunięcia wszystkich wartości „Brak” z listy bez przerywania innych wartości listy jest użycie „instrukcji Lambda” w pierwszym argumencie:

Listvar = [69,0,22,65,0, brak, brak, 123 6789, brak]
res = lista (Filter (Lambda Elem: ELEM nie jest brak, ListVar))
Drukuj („Oryginalna lista:”, ListVar)
Drukuj („Lista po filtrze:”, res)

Tym razem, gdy kod zostanie wykonany, wytworzy on następujące dane wyjściowe na terminalu:

Jak widać, pomyślnie usunąłeś wszystkie wartości „Brak” z listy za pomocą metody Filter ().

Wniosek

Użytkownik może usunąć wszystkie „Nic”Wartości z listy Python za pomocą metody remove () wraz z metodą __Contains __ (), wymieniaj rozumienie z kondycją IF lub za pomocą metody Filter () z instrukcją Lambda. Wszystkie te trzy metody zostały dokładnie rozwinięte w tym poście z reprezentacją obrazkową.