Maison >développement back-end >Tutoriel Python >Python - Supprimer le dictionnaire de la liste des dictionnaires

Python - Supprimer le dictionnaire de la liste des dictionnaires

WBOY
WBOYavant
2023-08-19 21:49:041297parcourir

Python - 从字典列表中删除字典

Le dictionnaire est une fonctionnalité couramment utilisée en Python pour stocker des données selon les besoins de l'utilisateur. Un autre processus typique consiste à modifier ou à manipuler ces données. Pour devenir un programmeur efficace et rapide, vous devez comprendre comment supprimer un dictionnaire de la liste des dictionnaires. Cet article couvrira de nombreuses techniques permettant de supprimer des dictionnaires de la liste des dictionnaires.

Différentes façons de supprimer un dictionnaire de la liste des dictionnaires

Méthode de boucle

Nous spécifierons le dictionnaire que nous souhaitons supprimer de la liste des dictionnaires, puis nous créerons une condition en utilisant if() pour fournir un paramètre permettant de supprimer le dictionnaire de la liste des dictionnaires. On peut comprendre plus clairement avec l'exemple suivant :

La traduction chinoise de

Exemple

est :

Exemple

# Dictionaries
Cities = [
    {"City": "Bangalore", "location": "India"},
    {"City": "Toronto", "location": "Canada"},
    {"City": "Liverpool", "location": "England"},
    {"City": "kano", "location": "Nigeria"},
    {"City": "Sydney", "location": "Australia"},
    {"City": "Berlin", "location": "Germany"},
    {"City": "New York", "location": "USA"}
]

Remove = "Liverpool"  #Specifying the dictionary to be removed

for city in Cities:  # Checking all the different dictionaries
    if city["City"] == Remove: #Creating a condition 
        Cities.remove(city)   #If the condition is satisfied remove() method will be used

print(Cities)  #Display the output after removing the dictionary

Sortie

Le résultat du programme ressemblera à ceci :

[{'City': 'Bangalore', 'location': 'India'}, {'City': 'Toronto', 'location': 'Canada'}, {'City': 'kano', 'location': 'Nigeria'}, {'City': 'Sydney', 'location': 'Australia'}, {'City': 'Berlin', 'location': 'Germany'}, {'City': 'New York', 'location': 'USA'}]  

Compréhension de la liste

En utilisant la méthode de compréhension de liste, nous pouvons supprimer un dictionnaire spécifique en appliquant une condition, puis nous pouvons créer une liste modifiée de dictionnaires qui ne contient pas le dictionnaire spécifié. On peut comprendre plus clairement avec l'exemple suivant :

La traduction chinoise de

Exemple

est :

Exemple

#Dictionaries
Cities = [
    {"City": "Bangalore", "location": "India"},
    {"City": "Toronto", "location": "Canada"},
    {"City": "Liverpool", "location": "England"},
    {"City": "kano", "location": "Nigeria"},
    {"City": "Sydney", "location": "Australia"},
    {"City": "Berlin", "location": "Germany"},
    {"City": "New York", "location": "USA"}
]

Remove = "Liverpool"  #Specifying Dictionary To Be Removed

Cities = [city for city in Cities if city["City"] != Remove]  #Creating a new list and specifying the condition to remove the unwanted dictionary

print(Cities)  #Display The Updated Output

Sortie

Le résultat du programme ci-dessus ressemblera à ceci :

[{'City': 'Bangalore', 'location': 'India'}, {'City': 'Toronto', 'location': 'Canada'}, {'City': 'kano', 'location': 'Nigeria'}, {'City': 'Sydney', 'location': 'Australia'}, {'City': 'Berlin', 'location': 'Germany'}, {'City': 'New York', 'location': 'USA'}]  

Modifier la liste originale

Dans cette méthode, nous ne créons aucune nouvelle liste mais apportons directement des modifications à la liste de dictionnaires d'origine. Il est donc simple et rapide de le faire sans duplication de données. On peut comprendre plus clairement avec l'exemple suivant :

La traduction chinoise de

Exemple

est :

Exemple

# Dictionaries
Cities = [
    {"City": "Bangalore", "location": "India"},
    {"City": "Toronto", "location": "Canada"},
    {"City": "Liverpool", "location": "England"},
    {"City": "kano", "location": "Nigeria"},
    {"City": "Sydney", "location": "Australia"},
    {"City": "Berlin", "location": "Germany"},
    {"City": "New York", "location": "USA"}
]

for City in Cities:  #We will specify a condition
    if City.get("location") == 'England':   #If the location is England
        Cities.remove(City)  #Remove the dictionary with location as England

print(Cities) #Display The Modified Output

Sortie

Le résultat du code ci-dessus est le suivant :

[{'City': 'Bangalore', 'location': 'India'}, {'City': 'Toronto', 'location': 'Canada'}, {'City': 'kano', 'location': 'Nigeria'}, {'City': 'Sydney', 'location': 'Australia'}, {'City': 'Berlin', 'location': 'Germany'}, {'City': 'New York', 'location': 'USA'}] 

Fonction filtre

Comme son nom l'indique, nous appliquerons simplement un filtre pour préciser les dictionnaires à supprimer de la liste des dictionnaires. On comprendra mieux avec l'exemple suivant :

La traduction chinoise de

Exemple

est :

Exemple

#Dictionaries
Cities = [
    {"City": "Bangalore", "location": "India"},
    {"City": "Toronto", "location": "Canada"},
    {"City": "Liverpool", "location": "England"},
    {"City": "kano", "location": "Nigeria"},
    {"City": "Sydney", "location": "Australia"},
    {"City": "Berlin", "location": "Germany"},
    {"City": "New York", "location": "USA"}
]

new_dictionary = list(filter(lambda City: City.get("location") != 'England', Cities))  # We specified a condition that if the location is England is found from the list then it is to be filtered out and removed from the list of dictionaries

print(new_dictionary)  #Display the Modified Output

Sortie

Le résultat du programme ci-dessus ressemblera à ceci :

[{'City': 'Bangalore', 'location': 'India'}, {'City': 'Toronto', 'location': 'Canada'}, {'City': 'kano', 'location': 'Nigeria'}, {'City': 'Sydney', 'location': 'Australia'}, {'City': 'Berlin', 'location': 'Germany'}, {'City': 'New York', 'location': 'USA'}]   

Index de la liste

Cette méthode n'est utilisée que lorsque la liste des dictionnaires est petite et que vous connaissez la position exacte du dictionnaire que vous souhaitez supprimer. Il vous suffit donc de préciser l’emplacement du dictionnaire que vous souhaitez supprimer. Prenons un exemple pour mieux comprendre :

La traduction chinoise de

Exemple

est :

Exemple

#Dictionaries
Cities = [
    {"City": "Bangalore", "location": "India"},
    {"City": "Toronto", "location": "Canada"},
    {"City": "Liverpool", "location": "England"},
    {"City": "kano", "location": "Nigeria"},
    {"City": "Sydney", "location": "Australia"},
    {"City": "Berlin", "location": "Germany"},
    {"City": "New York", "location": "USA"}
]

dictionary_remove= 2  #It specifies the position of the dictionary to be removed
#The index number starts from 0
del Cities[dictionary_remove]  #It commands to delete the dictionary in specified index number

print(Cities)  #Displays the Modified Output

Sortie

Le résultat du programme ci-dessus ressemblera à ceci :

[{'City': 'Bangalore', 'location': 'India'}, {'City': 'Toronto', 'location': 'Canada'}, {'City': 'kano', 'location': 'Nigeria'}, {'City': 'Sydney', 'location': 'Australia'}, {'City': 'Berlin', 'location': 'Germany'}, {'City': 'New York', 'location': 'USA'}]  

Conclusion

Lors du traitement de grandes quantités de données, la modification des données est une étape nécessaire. Il est donc important de comprendre les différentes techniques afin de mettre en œuvre les modifications rapidement.

Cet article détaille toutes les manières possibles de supprimer un dictionnaire de la liste des dictionnaires contenus dans une source de données. Vous devez rester vigilant lorsque vous effectuez ce type d'opération car des erreurs de données peuvent survenir, entraînant éventuellement une perte de données. Il est donc nécessaire de sauvegarder vos données avant d’y apporter des modifications.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer