您提到過展平嵌套列表的現有解決方案在[[[1, 2, 3 ], [ 等結構上失敗4, 5]], 6]。此查詢探討了替代方法的可行性,特別是使用迭代器。
建議的方法:
建議的解決方案涉及利用生成器函數來簡化扁平化過程並提高性能.
Python 2實作:
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 實作:
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
迭代器的優點:
結論:
所提出的利用迭代器的方法提供了一種有效且有效率的方法來展平不規則清單清單。與其他方法相比,它解決了任意嵌套深度的情況,並避免了遞歸或手動展平技術的缺點。
以上是Python 中迭代器如何有效地展平不規則巢狀清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!