V tomto článku poďme diskutovať o rôznych spôsoboch vymazania zoznamu v Pythone. Python poskytuje množstvo rôznych spôsobov vymazania zoznamu a budeme o nich diskutovať v tomto článku.
Príklad
Input: [2, 3, 5, 6, 7] Output: [] Explanation: Python list is cleared and it becomes empty so we have returned empty list.>
Rôzne spôsoby odstránenia zo zoznamu v Pythone
Existuje mnoho spôsobov, ako vyčistiť zoznam pomocou metód rôznych konštruktov, ktoré ponúka jazyk Python. Pokúsme sa pochopiť každú z metód jeden po druhom.
- Použitie clear()
- Opätovná inicializácia zoznamu
- Použitím *= 0
- Použitím z
- Použitie metódy pop().
- Pomocou krájania
- pomocou porozumenia zoznamu
Vymazať zoznam pomocou Python List clear()
V tomto príklade používame jasný() metóda na vymazanie zoznamu Python .
Python3 GEEK = [6, 0, 4, 1] print('GEEK before clear:', GEEK) # Clearing list GEEK.clear() print('GEEK after clear:', GEEK)> Výkon
GEEK before clear: [6, 0, 4, 1] GEEK after clear: []>
Vyčistite zoznam opätovnou inicializáciou zoznamu
Inicializácia zoznamu v tomto rozsahu inicializuje zoznam bez hodnoty. tj zoznam veľkosti 0. Pozrime sa na príklad, ktorý demonštruje metódu 1 a 2 na vymazanie zoznamu.
Python3
list1 = [1, 2, 3] # Printing list2 before deleting print('List1 before deleting is : ' + str(list1)) # deleting list using reinitialization list1 = [] # Printing list2 after reinitialization print('List1 after clearing using reinitialization : ' + str(list1))> Výkon
List1 before deleting is : [1, 2, 3] List1 after clearing using reinitialization : []>
Vymazanie zoznamu Python pomocou *= 0
Toto je menej známa metóda, ale táto metóda odstráni všetky prvky zoznamu a urobí ho prázdnym. V tomto príklade používame *=0 na vymazanie zoznamu.
Python3 # Initializing lists list1 = [1, 2, 3] # Printing list2 before deleting print('List1 before clearing is : ' + str(list1)) list1*=0 # Printing list2 after reinitialization print('List1 after clearing using *=0 : ' + str(list1))> Výkon
List1 before clearing is : [1, 2, 3] List1 after clearing using *=0 : []>
C naučiť sa používať zoznam z
Python z možno použiť na vymazanie prvkov zoznamu v rozsahu, ak rozsah neuvedieme, všetky prvky sa vymažú. V tomto príklade používame kľúčové slovo del na vymazanie zoznamu.
Python3 list1 = [1, 2, 3] list2 = [5, 6, 7] # Printing list1 before deleting print('List1 before deleting is : ' + str(list1)) # deleting list1 using del del list1[:] print('List1 after clearing using del : ' + str(list1)) # Printing list2 before deleting print('List2 before deleting is : ' + str(list2)) # deleting list using del del list2[:] print('List2 after clearing using del : ' + str(list2))> Výkon
List1 before deleting is : [1, 2, 3] List1 after clearing using del : [] List2 before deleting is : [5, 6, 7] List2 after clearing using del : []>
Metóda Python pop() na vymazanie zoznamu
V tomto príklade používame pop() spôsob vymazania zoznamu.
Python3
list1 = [1, 2, 3] # Printing list1 before deleting print('List1 before deleting is : ' + str(list1)) # deleting list1 while(len(list1) != 0): list1.pop() print('List1 after clearing using del : ' + str(list1))> Výkon
List1 before deleting is : [1, 2, 3] List1 after clearing using del : []>
Časová zložitosť: O(n^2) kde n je dĺžka zoznamu list1.
Pomocný priestor: O(1).
Vymazať zoznam pomocou Slicing
Táto metóda zahŕňa použitie rezania na vytvorenie nového zoznamu bez prvkov a jeho priradenie k pôvodnej premennej zoznamu. V tomto príklade používame rezanie na vymazanie zoznamu.
Python3 # Initializing list lst = [1, 2, 3, 4, 5] print('List before clearing: ',lst) # Clearing list using slicing lst = lst[:0] print('List after clearing using Slicing: ',lst)> Výkon
List before clearing: [1, 2, 3, 4, 5] List after clearing using Slicing: []>
Časová zložitosť: O(1)
Pomocný priestor: O(n), kde n je dĺžka zoznamu.
Vyčistite zoznam pomocou metódy porozumenia zoznamu
Theclear_list>funkcia je určená na vymazanie alebo vyprázdnenie zoznamu vstupov,lst>, komplexným filtrovaním jeho prvkov prostredníctvom porozumenia zoznamu, ktorý sa vždy vyhodnotíFalse>. Tu je zjednodušené vysvetlenie založené na vašom príklade:
- Definícia funkcie :
clear_list(lst)>vezme zoznamlst>ako jeho parameter. - Porozumenie zoznamu : Vo vnútri funkcie sa vytvorí nový zoznam s porozumením zoznamu
[item for item in lst if False]>. Pretože podmienka je vždyFalse>, žiadne prvky z pôvodného zoznamulst>splniť podmienku, výsledkom čoho je prázdny zoznam. - Vrátiť prázdny zoznam : Funkcia vráti tento novovytvorený prázdny zoznam.
- Testovanie funkcie :
input_list>je definovaná prvkami[2, 3, 5, 6, 7]>. Kedyclear_list>sa volá sinput_list>, vráti prázdny zoznam[]>. - Tlačový výstup : Výstup, ktorým je prázdny zoznam, sa vytlačí a zobrazí sa
[]>.
def clear_list(lst): lst = [item for item in lst if False] return lst input_list = [2, 3, 5, 6, 7] output = clear_list(input_list) print(output) # Output: []>
Výkon
[]>
Časová zložitosť:O(n)
pomocná medzera:O(n), kde n je dĺžka zoznamu.