Izmantojot vārdnīcu, uzrakstiet Python programmu, lai iegūtu vārdnīcas atslēgas kā sarakstu.
Piemēri:
Input : {1:'a', 2:'b', 3:'c'} Output : [1, 2, 3] Input : {'A' : 'ant', 'B' : 'ball'} Output : ['A', 'B']> 1. metode: Iegūstiet vārdnīcas atslēgas kā sarakstu, izmantojot dict.keys()
Python list() funkcija kā parametru izmanto jebkuru iterējamu un atgriež sarakstu. Programmā Python iterable ir objekts, kurā varat atkārtot.
Python3
mydict>=> {>1>:>'Geeks'>,>2>:>'for'>,>3>:>'geeks'>}> keysList>=> list>(mydict.keys())> print>(keysList)> |
>
>Izvade
[1, 2, 3]>
Programmas laika sarežģītība ir O(n), kur n ir atslēgu skaits vārdnīcā.
Programmas telpas sarežģītība ir O(n), kur n ir atslēgu skaits vārdnīcā. Tas ir tāpēc, ka programma izveido jaunu saraksta objektu ar tādu pašu elementu skaitu kā vārdnīcas taustiņiem, kam nepieciešama papildu atmiņa.
rekha indiānis
2. metode: Iegūstiet vārdnīcas atslēgas kā sarakstu, izmantojot For Loop un pievienošanas metodi
Izmantojot šo metodi, mēs atkārtosim katru taustiņu, izmantojot dict.keys() funkcija un pievienot tos jaunā sarakstā, kas nosaukts kā saraksts.
Python3
# Python program to get> # dictionary keys as list> def> getList(>dict>):> >list> => []> >for> key>in> dict>.keys():> >list>.append(key)> > >return> list> > # Driver program> dict> => {>1>:>'Geeks'>,>2>:>'for'>,>3>:>'geeks'>}> print>(getList(>dict>))> |
>
>Izvade
[1, 2, 3]>
Laika sarežģītība: O(n)
Palīgtelpa: O(n)
3. metode. Vārdnīcas atslēgas sarakstam, izmantojot saraksta izpratni
Šeit mēs mēģināsim saīsināt savu kodu, izmantojot Python saraksta izpratni.
Python3
dict> => {>1>:>'Geeks'>,>2>:>'for'>,>3>:>'geeks'>}> keysList>=> [key>for> key>in> dict>]> print>(keysList)> |
>
>Izvade
[1, 2, 3]>
Laika sarežģītība: O(n), kur n ir atslēgu un vērtību pāru skaits vārdnīcā.
Papildtelpa: O(n), lai saglabātu atslēgas un vērtības vārdnīcā.
4. metode: Vārdnīcas atslēgas, lai uzskaitītu, izmantojot izpakošanu ar *
Izsaiņošana ar * darbojas ar jebkuru iterējamu objektu, un, tā kā vārdnīcas atgriež atslēgas, kad tās tiek atkārtotas, varat viegli izveidot sarakstu, izmantojot to saraksta literālā.
Python3
def> getList(>dict>):> >return> [>*>dict>]> # Driver program> dict> => {>'a'>:>'Geeks'>,>'b'>:>'For'>,>'c'>:>'geeks'>}> print>(getList(>dict>))> |
>
>
Izvade:
['a', 'b', 'c']>
Laika sarežģītība: O(N)
Palīgtelpa: O(N)
5. metode: Vārdnīcas atslēgas sarakstam, izmantojot itemgetter
Operatora moduļa vienumu ieguvējs atgriež izsaucamu objektu, kas izgūst vienumu no sava operanda, izmantojot operanda __getitem__ () metode. Šī metode tiek kartēta uz dict.items() un pēc tam tiek ievadīta sarakstā.
Python3
from> operator>import> itemgetter> def> getList(>dict>):> >return> list>(>map>(itemgetter(>0>),>dict>.items()))> # Driver program> dict> => {>'a'>:>'Geeks'>,>'b'>:>'For'>,>'c'>:>'geeks'>}> print>(getList(>dict>))> |
>
>
Izvade:
['a', 'b', 'c']>
6. metode: kartes un lambda izmantošana
Vēl viena pieeja vārdnīcas taustiņu iegūšanai kā sarakstam ir funkcijas map() izmantošana kopā ar lambda funkciju.
Šeit ir piemērs, kā to var izdarīt:
Python3
def> get_keys_as_list(dictionary):> >return> list>(>map>(>lambda> x: x[>0>], dictionary.items()))> # Driver program> dictionary>=> {>1>:>'Geeks'>,>2>:>'for'>,>3>:>'geeks'>}> print>(get_keys_as_list(dictionary))> #This code is contributed by Edula Vinay Kumar Reddy> |
>
>Izvade
[1, 2, 3]>
Šī pieeja izmanto funkciju map(), lai katram vārdnīcas vienumam lietotu lambda funkciju, kas atgriež katra vienuma atslēgu. Pēc tam iegūtais iteratora objekts tiek nodots funkcijai list(), lai izveidotu atslēgu sarakstu.
Šai pieejai ir O(n) laika sarežģītība un O(n) palīgtelpas sarežģītība, kur n ir atslēgu skaits vārdnīcā. Tas ir īss un efektīvs veids, kā iegūt vārdnīcas atslēgas kā sarakstu.