Pouvez-vous supprimer des éléments d'un dictionnaire Python pendant l'itération ?

Susan Sarandon
Libérer: 2024-11-02 03:31:30
original
632 Les gens l'ont consulté

Can You Delete Items from a Python Dictionary During Iteration?

Pouvez-vous supprimer des éléments d'un dictionnaire lors d'une itération ?

Lors de la manipulation de dictionnaires en Python, la question de la suppression d'éléments lors d'une itération sur les clés se pose. Voici comment y parvenir efficacement.

Option pour Python 3

Dans Python 3, vous pouvez parcourir une liste de clés obtenues à partir de la méthode keys() :

<code class="python">for k in list(mydict.keys()):
    if mydict[k] == 3:
        del mydict[k]</code>
Copier après la connexion

Option pour Python 2

Dans Python 2, la méthode iterkeys() renvoie un itérateur au lieu d'une liste. Par conséquent, la modification du dictionnaire lors d’une itération sur iterkeys() génère une RuntimeError. Utilisez plutôt la méthode keys() pour obtenir une liste de clés :

<code class="python">for k in mydict.keys():
    if k == 'two':
        del mydict[k]</code>
Copier après la connexion

Pour une suppression basée sur les valeurs des éléments, parcourez la méthode items() :

<code class="python">for k, v in mydict.items():
    if v == 3:
        del mydict[k]</code>
Copier après la connexion

N'oubliez pas de soyez prudent lorsque vous modifiez des dictionnaires pendant l'itération, car cela peut perturber le processus d'itération.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!