Heim >Backend-Entwicklung >Python-Tutorial >Wie können Iteratoren unregelmäßig verschachtelte Listen in Python effizient reduzieren?
Sie haben erwähnt, dass bestehende Lösungen zum Reduzieren verschachtelter Listen bei Strukturen wie [[[1, 2, 3], [ 4, 5]], 6]. Diese Abfrage untersucht die Machbarkeit alternativer Ansätze, insbesondere der Verwendung von Iteratoren.
Der vorgeschlagene Ansatz:
Die vorgeschlagene Lösung beinhaltet die Nutzung von Generatorfunktionen, um den Glättungsprozess zu vereinfachen und die Leistung zu verbessern .
Python 2 Implementierung:
from collections import Iterable def flatten(xs): for x in xs: if isinstance(x, Iterable) and not isinstance(x, basestring): for item in flatten(x): yield item else: yield x
Python 3-Implementierung:
from collections.abc import Iterable def flatten(xs): for x in xs: if isinstance(x, Iterable) and not isinstance(x, (str, bytes)): yield from flatten(x) else: yield x
Vorteile von Iteratoren:
Fazit:
Das Der vorgeschlagene Ansatz unter Verwendung von Iteratoren bietet eine effektive und effiziente Möglichkeit, unregelmäßige Listenlisten zu reduzieren. Im Vergleich zu anderen Methoden behandelt es Fälle mit willkürlichen Verschachtelungstiefen und vermeidet die Nachteile rekursiver oder manueller Reduzierungstechniken.
Das obige ist der detaillierte Inhalt vonWie können Iteratoren unregelmäßig verschachtelte Listen in Python effizient reduzieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!