Python | Previesť sadu na zoznam
Vzhľadom na množinu napíšte a Python program na konverziu daného Nastavte na Zoznam.
Input : ('Geeks', 'for', 'geeks') Output : ['Geeks', 'for', 'geeks'] Explanation: The data type of the input is set and the data type of the output is list . Nižšie sú uvedené spôsoby prevodu sady na zoznam, ktorým sa budeme venovať nižšie:
- Použitím metóda zoznamu
- Použitím zoradené () metóda
- Pomocou funkcia map().
- Použitím porozumenie zoznamu
- Použitím [*set, ]
- Použitím konštruktor list().
- Pomocou kopírovania a vymazania
Konvertujte sadu na zoznam pomocou metódy zoznamu
Tu prejdeme nastaviť dátový typ vnútri zoznam zátvorky ako parameter a toto skonvertuje nastavený dátový typ na dátový typ zoznamu, ako je uvedené v kóde nižšie.
Python3
# set into a list> my_set> => {> 'Geeks'> ,> 'for'> ,> 'geeks'> }> print> (> type> (my_set))> s> => list> (my_set)> print> (> type> (s))> |
Výkon:
['Geeks', 'for', 'geeks']
Časová zložitosť: O(n)
Pomocný priestor: O(n)
Nastavte do zoznamu pomocou metódy sorted().
Pomocou zoradené () funkcia prevedie množinu na zoznam v definovanom poradí. Jedinou nevýhodou tejto metódy je, že prvky množiny musia byť zoradené.
Python3
# convert a set into a list> def> convert(> set> ):> > return> sorted> (> set> )> # Driver function> my_set> => {> 1> ,> 2> ,> 3> }> s> => set> (my_set)> print> (convert(s))> |
Výkon:
[1, 2, 3]
Časová zložitosť: O(n)
Pomocný priestor: O(n)
Preveďte množinu na zoznam pomocou funkcie map().
Môžete použiť funkcia map(). previesť sadu na zoznam odovzdaním nastaviť ako argument pre funkciu map() a vráti zoznam výsledkov. Napríklad:
Python3
# program to convert a set into a list> def> convert(s):> > return> list> (> map> (> lambda> x: x, s))> # Driver function> s> => {> 1> ,> 2> ,> 3> }> print> (convert(s))> |
Výkon:
[1, 2, 3]
Časová zložitosť: O(n)
Pomocný priestor: O(n)
Konvertujte sadu na zoznam pomocou funkcie List Comprehension
Môžeš použiť porozumenie zoznamu na vytvorenie nového zoznamu z prvkov v sade, ako je uvedené v kóde nižšie.
Python3
def> convert(s):> > # Use a list comprehension to create a new list from the elements in the set> > return> [elem> for> elem> in> s]> s> => {> 1> ,> 2> ,> 3> }> print> (convert(s))> |
Výkon:
[1, 2, 3]
Časová zložitosť: O(n)
Pomocný priestor: O(n)
Previesť sadu na zoznam pomocou [*set, ]
Tým sa sada v podstate rozbalí s vnútri listového literálu, ktorý je vytvorený vďaka prítomnosti jednej čiarky (, ). Tento prístup je o niečo rýchlejší, ale trpí na čitateľnosť.
Napríklad:
Python3
#program to convert a set into a list> def> convert(> set> ):> > return> [> *> set> , ]> # Driver function> s> => set> ({> 1> ,> 2> ,> 3> })> print> (convert(s))> |
Výkon:
[1, 2, 3]
Časová zložitosť: O(n)
Pomocný priestor: O(n)
Konvertovať sadu na zoznam pomocou konštruktora list().
Môžete použiť list()> Konštruktor na priamu konverziu množiny na zoznam. V nižšie uvedenom kóde vytvoríme množinu `my_set` s prvkami 1 až 5, potom ju skonvertujeme na zoznam `my_list` pomocou konštruktora `list()` a vytlačíme výsledný zoznam. Výstup je „[1, 2, 3, 4, 5]“.
Python3
my_set> => {> 1> ,> 2> ,> 3> ,> 4> ,> 5> }> my_list> => list> (my_set)> print> (my_list)> |
Výkon :
[1, 2, 3, 4, 5]
Časová zložitosť: O(n)
Pomocný priestor: O(n)
Konvertovať Set na List u spievať kopírovať a jasné
Môžete vytvoriť kópiu množiny a potom ju vymazať, aby ste získali prázdnu množinu, ktorú možno použiť na vytvorenie prázdneho zoznamu . Keďže kód nižšie vytvorí množinu „my_set“ s prvkami 6 až 10, vytvorí kópiu množiny ako zoznam „my_list“, vymaže pôvodnú množinu a vytlačí skopírovaný zoznam. Výstup je „[6, 7, 8, 9, 10]“.
Python3
my_set> => {> 6> ,> 7> ,> 8> ,> 9> ,> 10> }> my_list> => list> (my_set.copy())> my_set.clear()> print> (my_list)> |
Výkon :
[6, 7, 8, 9, 10]
Časová zložitosť: O(n)
Pomocný priestor: O(n)