logo

Python | Manieren om een ​​sleutel uit het woordenboek te verwijderen

Woordenboek wordt gebruikt in tal van praktische toepassingen, zoals dagprogrammering, webontwikkeling en AI/ML-programmering, waardoor het in het algemeen een nuttige container is. Daarom is het altijd een pluspunt om steno's te kennen voor het uitvoeren van verschillende taken die verband houden met woordenboekgebruik. Dit artikel behandelt een dergelijke taak, namelijk het verwijderen/verwijderen van een sleutel/waarde-paar uit een woordenboek. We zullen verschillende methoden bespreken om een ​​bepaalde taak uit te voeren, en in Tenslotte zullen we zien hoe we alle sleutels uit een woordenboek kunnen verwijderen. Woordenboek .

Voorbeeld:



 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}>

Methode 1: Verwijder een sleutel uit een woordenboek met behulp van de del

Het del trefwoord kan worden gebruikt om ter plekke de sleutel te verwijderen die aanwezig is in het woordenboek in Python. Eén nadeel dat kan worden bedacht bij het gebruik hiervan is dat er een uitzondering ontstaat als de sleutel niet wordt gevonden en daarom het niet-bestaan ​​van de sleutel moet worden afgehandeld. Demonstratie van het verwijderen van sleutel-waardeparen met behulp van 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'>]>

>

>

java lang naar string

Uitgang:

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

Uitzondering :

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

De tijdscomplexiteit van het initialiseren van het woordenboek en het verwijderen van een item uit het woordenboek met behulp van de del-instructie is O(1).

De benodigde extra ruimte voor deze code is O(1), omdat we alleen het bestaande woordenboek wijzigen en geen nieuwe datastructuren creëren.

Methode 2: Een sleutel uit een woordenboek verwijderen met pop()

De knal() kan worden gebruikt om een ​​sleutel en de bijbehorende waarde te verwijderen. Het voordeel ten opzichte van het gebruik van del is dat het het mechanisme biedt om de gewenste waarde af te drukken als wordt geprobeerd een niet-bestaand dictaat te verwijderen. paar. Ten tweede retourneert het ook de waarde van de sleutel die wordt verwijderd, naast het uitvoeren van een eenvoudige verwijderbewerking. Demonstratie van het verwijderen van sleutel-waardeparen met 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))>

>

>

jaar maand

Uitgang:

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>

Tijdcomplexiteit: O(1)
Hulpruimte: O(1)

Methode 3: Items() + dicteerbegrip gebruiken om een ​​sleutel uit een woordenboek te verwijderen

items () in combinatie met het begrijpen van dictaten kunnen ons ook helpen de taak van het verwijderen van sleutel-waardeparen te verwezenlijken, maar het heeft het nadeel dat het geen intern dictaat is. techniek. Eigenlijk wordt er een nieuw dictaat gemaakt, behalve de sleutel die we niet willen opnemen. Demonstratie van het verwijderen van sleutel-waardeparen met behulp van items() + dict-begrip.

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))>

>

>

Uitgang:

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}>

Tijdcomplexiteit: O(n), waarbij n de lengte is van de lijst test_dict
Hulpruimte: O(n) er wordt een extra ruimte van grootte n gecreëerd waarbij n het aantal elementen in de res-lijst is

Methode 4: Gebruik een Python-woordenboekbegrip om een ​​sleutel uit een woordenboek te verwijderen

In dit voorbeeld gebruiken we Dictionary Comprehension om een ​​sleutel uit een woordenboek te verwijderen.

Python3




wanneer kwam windows 7 uit

# 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)>

>

>

Uitgang:

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}>

Methode 5: Itereren en elimineren

In dit voorbeeld gebruiken we a lus om een ​​sleutel uit een woordenboek te verwijderen.

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)>

>

>

Uitgang:

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

Hoe verwijder ik alle sleutels uit een woordenboek?

Methode 1: Verwijder alle sleutels uit een woordenboek met behulp van de del

Het del-trefwoord kan ook worden gebruikt om een ​​lijst te verwijderen, een lijst op te delen, woordenboeken te verwijderen, sleutel-waardeparen uit een woordenboek te verwijderen, variabelen te verwijderen, enz.

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!'>)>

inurl:.git/head
>

>

Uitgang:

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

Methode 2: Verwijder alle sleutels uit een woordenboek met dict.clear()

De clear() methode verwijdert alle items uit het woordenboek. De clear() methode retourneert geen enkele waarde.

Python3




# 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)>

>

>

Uitgang:

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

Tijdcomplexiteit: O(1)

Hulpruimte: O(1)