logo

Pythona | Sposoby usunięcia klucza ze słownika

Słownik jest używany w różnorodnych praktycznych zastosowaniach, takich jak programowanie na co dzień, tworzenie stron internetowych i programowanie AI/ML, co czyni go ogólnie użytecznym kontenerem. Dlatego znajomość skrótów umożliwiających realizację różnych zadań związanych z korzystaniem ze słownika zawsze jest zaletą. W tym artykule omówiono jedno z takich zadań, jakim jest usuwanie pary klucz-wartość słownika ze słownika. Omówimy różne metody wykonania danego zadania, a w ostatniej części zobaczymy, jak możemy usunąć wszystkie klucze ze słownika. Słownik .

Przykład:



 Before remove key: {'Anuradha': 21, 'Haritha': 21, 'Arushi': 22, 'Mani': 21 } Operation Perform:  del test_dict['Mani'] After removing key: {'Anuradha': 21, 'Haritha': 21, 'Arushi': 22}>

Metoda 1: Usuń klucz ze słownika za pomocą polecenia del

Słowo kluczowe del może zostać użyte do lokalnego usunięcia klucza znajdującego się w słowniku w Pythonie. Wadą takiego rozwiązania jest to, że zgłasza wyjątek, jeśli klucz nie zostanie znaleziony, a zatem należy zająć się nieistnieniem klucza. Demonstracja usuwania pary klucz-wartość za pomocą del.

Python3








# Initializing dictionary> test_dict>=> {>'Arushi'>:>22>,>'Mani'>:>21>,>'Haritha'>:>21>}> # Printing dictionary before removal> print>(>'The dictionary before performing remove is : '>, test_dict)> # Using del to remove a dict> # removes Mani> del> test_dict[>'Mani'>]> # Printing dictionary after removal> print>(>'The dictionary after remove is : '>, test_dict)> # Using del to remove a dict> # raises exception> del> test_dict[>'Mani'>]>

>

>

logika pierwszego rzędu

Wyjście :

The dictionary before performing remove is : {'Arushi': 22, 'Mani': 21, 'Haritha': 21} The dictionary after remove is : {'Arushi': 22, 'Haritha': 21}>

Wyjątek :

Traceback (most recent call last): File '/home/44db951e7011423359af4861d475458a.py', line 20, in del test_dict['Mani'] KeyError: 'Mani'>

Złożoność czasowa inicjowania słownika i usuwania pozycji ze słownika za pomocą instrukcji del wynosi O(1).

Przestrzeń pomocnicza wymagana dla tego kodu to O(1), ponieważ modyfikujemy jedynie istniejący słownik i nie tworzymy żadnych nowych struktur danych.

Metoda 2: Usuń klucz ze słownika za pomocą pop()

The Muzyka pop() można użyć do usunięcia klucza i jego wartości w miejscu. Zaletą w porównaniu z użyciem del jest to, że zapewnia mechanizm drukowania żądanej wartości w przypadku próby usunięcia nieistniejącego słownika. para. Po drugie, oprócz wykonania prostej operacji usuwania, zwraca także wartość usuwanego klucza. Demonstracja usuwania pary klucz-wartość za pomocą pop()

Python3




# Initializing dictionary> test_dict>=> {>'Arushi'>:>22>,>'Anuradha'>:>21>,>'Mani'>:>21>,>'Haritha'>:>21>}> # Printing dictionary before removal> print>(>'The dictionary before performing remove is : '> +> str>(test_dict))> # Using pop() to remove a dict. pair> # removes Mani> removed_value>=> test_dict.pop(>'Mani'>)> # Printing dictionary after removal> print>(>'The dictionary after remove is : '> +> str>(test_dict))> print>(>'The removed key's value is : '> +> str>(removed_value))> print>(>' '>)> # Using pop() to remove a dict. pair> # doesn't raise exception> # assigns 'No Key found' to removed_value> removed_value>=> test_dict.pop(>'Manjeet'>,>'No Key found'>)> # Printing dictionary after removal> print>(>'The dictionary after remove is : '> +> str>(test_dict))> print>(>'The removed key's value is : '> +> str>(removed_value))>

>

>

Wyjście:

The dictionary before performing remove is : {'Arushi': 22, 'Anuradha': 21, 'Mani': 21, 'Haritha': 21} The dictionary after remove is : {'Arushi': 22, 'Anuradha': 21, 'Haritha': 21} The removed key's value is : 21 The dictionary after remove is : {'Arushi': 22, 'Anuradha': 21, 'Haritha': 21} The removed key's value is : No Key found>

Złożoność czasowa: O(1)
Przestrzeń pomocnicza: O(1)

Metoda 3: Użycie items() + rozumienie dyktowania w celu usunięcia klucza ze słownika

items () w połączeniu ze zrozumieniem dyktatu może również pomóc nam w wykonaniu zadania polegającego na usunięciu pary klucz-wartość, ale ma tę wadę, że nie jest dyktandem na miejscu. technika. Właściwie tworzony jest nowy dykt, z wyjątkiem klucza, którego nie chcemy dołączać. Demonstracja usuwania pary klucz-wartość przy użyciu items() + zrozumienie dyktowania.

Python3




# Initializing dictionary> test_dict>=> {>'Arushi'>:>22>,>'Anuradha'>:>21>,> >'Mani'>:>21>,>'Haritha'>:>21>}> # Printing dictionary before removal> print>('The dictionary before performing> remove>is> : '>+> str>(test_dict))> # Using items() + dict comprehension to remove a dict. pair> # removes Mani> new_dict>=> {key: val>for> key,> >val>in> test_dict.items()>if> key !>=> 'Mani'>}> # Printing dictionary after removal> print>(>'The dictionary after remove is : '> +> str>(new_dict))>

polimorfizm Javy
>

>

Wyjście:

The dictionary before performing remove is : {'Anuradha': 21, 'Haritha': 21, 'Arushi': 22, 'Mani': 21} The dictionary after remove is : {'Anuradha': 21, 'Haritha': 21, 'Arushi': 22}>

Złożoność czasowa: O(n), gdzie n jest długością listy test_dict
Przestrzeń pomocnicza: O(n) tworzona jest dodatkowa przestrzeń o rozmiarze n, gdzie n jest liczbą elementów na liście res

Metoda 4: Użyj zrozumienia słownika języka Python, aby usunąć klucz ze słownika

W tym przykładzie użyjemy funkcji rozumienia słownika do usunięcia klucza ze słownika.

Python3




# Initializing dictionary> test_dict>=> {>'Arushi'>:>22>,>'Anuradha'>:>21>,>'Mani'>:>21>,>'Haritha'>:>21>}> # Printing dictionary before removal> print>(>'The dictionary before performing remove is : '> +> str>(test_dict))> a_dict>=> {key: test_dict[key]>for> key>in> test_dict>if> key !>=> 'Mani'>}> print>(>'The dictionary after performing remove is : '>, a_dict)>

>

>

Wyjście:

k najbliższy sąsiad
The dictionary before performing remove is : {'Arushi': 22, 'Anuradha': 21, 'Mani': 21, 'Haritha': 21} The dictionary after performing remove is : {'Arushi': 22, 'Anuradha': 21, 'Haritha': 21}>

Metoda 5: Iteracja i eliminacja

W tym przykładzie użyjemy a pętla aby usunąć klucz ze słownika.

Python3




# Initializing dictionary> test_dict>=> {>'Arushi'>:>22>,>'Anuradha'>:>21>,>'Mani'>:>21>,>'Haritha'>:>21>}> print>(test_dict)> # empty the dictionary d> y>=> {}> # eliminate the unrequired element> for> key, value>in> test_dict.items():> >if> key !>=> 'Arushi'>:> >y[key]>=> value> print>(y)>

>

>

Wyjście:

{'Arushi': 22, 'Anuradha': 21, 'Mani': 21, 'Haritha': 21} {'Anuradha': 21, 'Mani': 21, 'Haritha': 21}>

Jak usunąć wszystkie klucze ze słownika?

Metoda 1: Usuń wszystkie klucze ze słownika za pomocą polecenia del

Słowa kluczowego del można także używać do usuwania listy, dzielenia listy, usuwania słowników, usuwania par klucz-wartość ze słownika, usuwania zmiennych itp.

Python3




# Initializing dictionary> test_dict>=> {>'Arushi'>:>22>,>'Anuradha'>:>21>,>'Mani'>:>21>,>'Haritha'>:>21>}> print>(test_dict)> # empty the dictionary d> del> test_dict> try>:> >print>(test_dict)> except>:> >print>(>'Deleted!'>)>

>

>

Wyjście:

{'Arushi': 22, 'Anuradha': 21, 'Mani': 21, 'Haritha': 21} Deleted!>

Metoda 2: Usuń wszystkie klucze ze słownika za pomocą dict.clear()

Metoda clear() usuwa wszystkie elementy ze słownika. Metoda clear() nie zwraca żadnej wartości.

Python3




wiek Rihanny
# Initializing dictionary> test_dict>=> {>'Arushi'>:>22>,>'Anuradha'>:>21>,>'Mani'>:>21>,>'Haritha'>:>21>}> print>(test_dict)> # empty the dictionary d> test_dict.clear()> print>(>'Length'>,>len>(test_dict))> print>(test_dict)>

>

>

Wyjście:

{'Arushi': 22, 'Anuradha': 21, 'Mani': 21, 'Haritha': 21} Length 0 {}>

Złożoność czasowa: O(1)

Przestrzeń pomocnicza: O(1)