Comment renommer les clés dans les dictionnaires Python ?

DDD
Libérer: 2024-11-02 13:15:02
original
461 Les gens l'ont consulté

How do you Rename Keys in Python Dictionaries?

Renommer les clés du dictionnaire : une solution complète

Le dictionnaire Python est une structure de données polyvalente qui permet un stockage et une récupération efficaces des valeurs-clés paires. Cependant, certains scénarios peuvent nécessiter de renommer une clé sans en altérer la valeur ni perturber l'organisation du dictionnaire. Cette question répond à ce problème et propose une gamme de solutions adaptées à la fois aux dictionnaires réguliers et aux OrderedDicts.

Regular Dict

Pour un dictionnaire régulier, une approche simple consiste à utiliser le pop() pour supprimer l'ancienne clé et l'opérateur [] pour attribuer la valeur à la nouvelle clé :

<code class="python">mydict["k_new"] = mydict.pop("k_old")</code>
Copier après la connexion

Cette opération déplace effectivement l'élément à la fin du dictionnaire sauf si k_new existe déjà, dans auquel cas il écrase la valeur en place.

OrderedDict

OrderedDict, introduit dans Python 3.7, préserve l'ordre d'insertion des paires clé-valeur. Pour renommer une clé tout en conservant l'ordre :

<code class="python">OrderedDict((k_new if k == k_old else k, v) for k, v in od.items())</code>
Copier après la connexion

Cela réaffecte les valeurs aux nouvelles clés à l'aide d'une expression génératrice, garantissant ainsi que l'ordre est conservé.

Préserver l'ordre dans Python 3.7 Dict

Les dictionnaires Python 3.7 respectent nativement l'ordre d'insertion. Pour renommer une clé tout en préservant cet ordre :

<code class="python">d = {0:0, 1:1, 2:2, 3:3}
{k: v for k, v in d.items() if k != k_old} | {k_new: d[k_old]}</code>
Copier après la connexion

Modifier la clé elle-même

La question porte sur la modification de la clé elle-même. Cependant, comme les clés sont hachables et immuables en Python, la modification directe des clés n'est pas réalisable. Cependant, en réattribuant la valeur avec le nom de clé souhaité et en supprimant l'ancienne clé, le dictionnaire reste intact, "renommant" effectivement la clé sans la modifier directement.

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