Ako pridať prvky do zoznamu v Pythone

Na pridávanie prvkov do zoznamu v Pythone sa používajú rôzne metódy. Existujú 3 prípady pridania prvku do zoznamu:

  1. Pridajte prvok na začiatok zoznamu
  2. Pridajte prvok do zoznamu v indexe
  3. Pridajte prvok do zoznamu pri poslednom indexe

V tomto článku uvidíme, ako pridať prvky do zoznamu v Pythone.

Ako pridať položky do zoznamu v Pythone?

Manipulácia s dátovými štruktúrami v Python často vyžaduje pridávanie prvkov do zoznamov. Existujú rôzne spôsoby, ako to dosiahnuť, pričom každá má svoj špecifický prípad použitia. Pozrime sa, ako pridať prvky do zoznamu v Pythone.

  • metóda insert().
  • metóda append().
  • metóda zreťazenia
  • metóda extend().
  • spôsob rozbaľovania zoznamu
  • Metóda rezu a zreťazenia

Vložiť prvok do zoznamu Použitím vložiť() metódu

The insert()> metóda umožňuje pridávať prvky do zoznamu v indexe. Metóda insert() nám umožňuje vkladať prvky na konkrétny index.

Python3




my_list> => [> 2> ,> 3> ,> 4> ]> my_list.insert(> 0> ,> 1> )> print> (my_list)>

Výkon

[1, 2, 3, 4] 

Časová zložitosť: O(n), kde n je počet prvkov v zozname. Je to preto, že metóda vloženia musí posunúť všetky prvky zoznamu, aby sa prispôsobila novo vloženému prvku, čo trvá O(n) čas.
Pomocný priestor: O(1), pretože metóda vkladania nevyžaduje pridelenie žiadnej ďalšej pamäte.

Pridať prvok do zoznamu použitím metóda append().

metóda append(). pridať prvok na koniec zoznamu. Metóda append() sa používa na pridanie položky do zoznamu pri poslednom indexe. Ak chcete k zoznamu pridať viacero položiek, môžete zadať viacero hodnôt.

Python3




#creating a list> my_list> => [> 1> ,> 2> ,> 3> ]> #using append() to add elements> my_list.append(> 4> )> #printing new list> print> (my_list)>

Výkon

[1, 2, 3, 4] 

Časová zložitosť : O(1) – priemerný čas na pripojenie prvku zostáva konštantný.
Priestor Zložitosť : O(0) – Nevyžaduje sa žiadny ďalší priestor.

Pridať prvok do zoznamu Použitie zreťazenia

Môžete vytvoriť nový zoznam obsahujúci prvok, ktorý chcete pridať, a potom ho spojiť s existujúcim zoznamom. Dva zoznamy môžete spojiť pomocou +> operátor pridať zoznam do zoznamu v Pythone.

Python3




my_list> => [> 2> ,> 3> ,> 4> ]> new_element> => [> 1> ]> my_list> => new_element> +> my_list> print> (my_list)>

Výkon

[1, 2, 3, 4] 

Časová zložitosť: O(n)
Pomocný priestor: O(n) kde n je dĺžka zoznamu.

Pridať prvok do zoznamu Použitím extend()> Metóda

The extend()> metóda pridáva prvky z iného zoznamu (alebo akéhokoľvek iterovateľného) na koniec zoznamu.

Python3




my_list> => [> 1> ,> 2> ,> 3> ]> new_elements> => [> 4> ,> 5> ]> my_list.extend(new_elements)> print> (my_list)>

Výkon

[1, 2, 3, 4, 5] 

Časová zložitosť : O(k), kde k je počet prvkov v iterovateľnej rozšírenej.
Priestorová zložitosť : O(k) – Priestor je potrebný na uloženie pridávaných prvkov.

Pridať prvok do zoznamu pomocou Rozbaľovania zoznamu

Rozbalenie môžete použiť na pridanie prvkov z iného zoznamu (alebo akéhokoľvek iterovateľného) na koniec zoznamu alebo na konkrétny index.

Príklad 1. Pridajte prvky na koniec zoznamu

Python3




my_list> => [> 'a'> ,> 'b'> ,> 'c'> ]> new_elements> => [> 4> ,> 5> ]> my_list> +> => new_elements> print> (my_list)>

Výkon

['a', 'b', 'c', 4, 5] 

Časová zložitosť: O(n) – Podobné ako +> pretože zahŕňa kopírovanie prvkov do nového zoznamu.
Priestorová zložitosť: O(n) – Vytvorí sa nový zoznam na uloženie rozbalených prvkov.

Príklad 2. Pridajte prvky do špecifického indexu v zozname

Python3




my_list> => [> 'a'> ,> 'b'> ,> 'd'> ,> 'e'> ]> new_elements> => 'c'> index> => 2> my_list> => [> *> my_list[:index],> *> new_elements,> *> my_list[index:]]> print> (> 'New list after inserting 'c' at index 2 is'> )> print> (my_list)>

Výkon

New list after inserting 'c' at index 2 is ['a', 'b', 'c', 'd', 'e'] 

Časová zložitosť : O(n) Rozbalenie zahŕňa vytvorenie nového zoznamu s prvkami pred a za indexom spolu s novým prvkom. To si vyžaduje iteráciu pôvodného zoznamu, výsledkom čoho je lineárny čas.
Priestorová zložitosť : O(n) Vytvorenie nového zoznamu na uchovávanie rozbalených prvkov zvyšuje priestorovú zložitosť lineárne s veľkosťou vstupu.

Pridať prvok do zoznamu Používanie krájania a zreťazenia

Môžeš rozrezať zoznam na dve časti, potom zreťazte nový prvok a druhú časť pôvodného zoznamu.

Python3




my_list> => [> 1> ,> 2> ,> 4> ,> 5> ]> new_element> => 3> index> => 2> my_list> => my_list[:index]> +> [new_element]> +> my_list[index:]> print> (> 'New list after inserting 3 at index 2 is'> )> print> (my_list)>

Výkon

New list after inserting 3 at index 2 is [1, 2, 3, 4, 5] 

Časová zložitosť : O(n) Rozdelenie a zreťazenie zahŕňa vytvorenie nového zoznamu s existujúcimi a novými prvkami. Vyžaduje si to iteráciu pôvodného zoznamu a kopírovanie jeho prvkov, čo trvá lineárne.
Priestorová zložitosť : O(n) Vytvorenie nového zoznamu pre obe časti (pred indexom a za indexom) zvyšuje zložitosť priestoru lineárne s veľkosťou vstupu.

Python Slice Assignment

Na pridanie prvkov do stredu zoznamu môžeme použiť metódu slice

Python3




my_list> => [> 'a'> ,> 'b'> ,> 'c'> ,> 'e'> ]> new_element> => 'd'> index> => 3> my_list[index:index]> => new_element> print> (> 'New list after inserting 'd' at index 3 is'> )> print> (my_list)>

Výkon

New list after inserting 'd' at index 3 is ['a', 'b', 'c', 'd', 'e'] 

Časová zložitosť : O(n) Vytvorenie nového zoznamu s prvkami na pridanie a použitie extend()> spôsob vloženia do pôvodného zoznamu trvá lineárny čas.
Priestorová zložitosť: O(n) Vytvorenie nového zoznamu na uchovávanie prvkov, ktoré sa majú pridať, zvyšuje zložitosť priestoru lineárne s veľkosťou vstupu.

V tomto článku sme sa zaoberali rôznymi spôsobmi pridávania prvkov do zoznamu. Pomocou jednej z vyššie uvedených metód môžete pridať prvok na index 0, na koniec alebo špecifický index.

Prečítajte si viac operácií v zozname: