Der folgende Editor bringt Ihnen einen Artikel, der das Problem der Fehlerberichterstattung perfekt löst, wenn Python Elemente mit leeren Werten im Wörterbuch durchläuft und löscht. Der Herausgeber findet es ziemlich gut, deshalb werde ich es jetzt mit Ihnen teilen und es allen als Referenz geben. Folgen wir dem Editor, um einen Blick darauf zu werfen
exam = { 'math': '95', 'eng': '96', 'chn': '90', 'phy': '', 'chem ': '' }
Verwenden Sie zum Löschen die folgende Durchlaufmethode:
1 für e in Prüfung:
2 exam [e] == '':
3. del exam[e]
Der folgende Fehler tritt auf, So lösen Sie ihn:
Traceback (most recent call last):
File "Untitled.py", line 3, in <module>
for e in exam:
RuntimeError: dictionary changed size during iteration
Nach dem Login kopieren
Richtiger Ansatz:
s = {"1":a, "2" :b,"3":c,"4":d,"5":e}
2.s_key = list(s.keys())
3 🎜>
4.#Wenn ich zum Beispiel das vierte Element löschen möchte, befindet sich
5.del s["4"]
nur in der for-Schleife, was äquivalent ist Zum Betrieb der verknüpften Liste wird automatisch die nächste Methode aufgerufen!
Der Iterator des Wörterbuchs durchläuft seine Schlüssel. Während dieses Vorgangs kann das Wörterbuch nicht geändert werden! Daten können nicht gelöscht oder hinzugefügt werden
Sie müssen zuerst den Index des zu löschenden Elements aufzeichnen und ihn dann löschen, nachdem Exam.keys() eine unabhängige Liste zurückgegeben hat
Das Obige Artikel ist die perfekte Lösung. Python durchläuft und löscht leere Elemente im Wörterbuch und meldet Fehler. Ich hoffe, dass er Ihnen eine Referenz geben kann, und ich hoffe, dass Sie die PHP-Chinese-Website unterstützen.
Weitere perfekte Lösungen für das Problem der Fehlerberichterstattung, wenn Python leere Elemente im Wörterbuch durchläuft und löscht, beachten Sie bitte die chinesische PHP-Website!