Heim >Backend-Entwicklung >Python-Tutorial >Wie benenne ich Wörterbuchschlüssel in Python um, ohne Werte neu zuzuweisen oder zu iterieren?

Wie benenne ich Wörterbuchschlüssel in Python um, ohne Werte neu zuzuweisen oder zu iterieren?

Susan Sarandon
Susan SarandonOriginal
2024-11-04 07:02:311108Durchsuche

How to Rename Dictionary Keys in Python Without Reassigning Values or Iteration?

Wörterbuchschlüssel in Python umbenennen

Die Frage ist: Kann ein Wörterbuchschlüssel umbenannt werden, ohne seinen Wert neu zuzuweisen oder das Wörterbuch selbst zu durchlaufen?

Reguläres Wörterbuch:

Für ein reguläres Wörterbuch kann die Umbenennung mit dem folgenden Code erfolgen:

<code class="python">mydict[k_new] = mydict.pop(k_old)</code>

In diesem Code wird die Das Element wird an das Ende des Wörterbuchs verschoben, es sei denn, k_new ist bereits vorhanden. In diesem Fall wird sein Wert überschrieben.

Geordnetes Wörterbuch (Python 3.7):

Für ein OrderedDict , muss die Reihenfolge beibehalten werden. Der einfachste Weg, einen Schlüssel umzubenennen, besteht darin, ein neues Wörterbuch mit dem gewünschten Schlüsselnamen zu erstellen:

<code class="python">{k_new if k == k_old else k:v for k, v in od.items()}</code>

Geordnetes Wörterbuch (Allgemein):

Im Allgemeinen ändern Der Schlüssel selbst ist nicht praktisch, da Schlüssel unveränderlich sind und nicht geändert werden können. Daher besteht die Lösung darin, mithilfe eines Generatorausdrucks ein neues Wörterbuch mit dem gewünschten Schlüsselnamen zu erstellen:

<code class="python">OrderedDict((k_new if k == k_old else k, v) for k, v in od.items())</code>

Das obige ist der detaillierte Inhalt vonWie benenne ich Wörterbuchschlüssel in Python um, ohne Werte neu zuzuweisen oder zu iterieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn