불규칙한 목록 목록 병합

| | | | | | | | | | | |

예, 이 주제가 이전에 다루어졌다는 것을 알고 있습니다(여기, 여기, 여기, 여기), 하지만 내가 아는 한, 하나를 제외한 모든 솔루션은 다음과 같은 목록에서 실패합니다.

L = [[[1, 2 , 3], [4, 5]], 6] 

원하는 출력은

[1, 2, 3, 4, 5, 6] 

아니면 이터레이터가 더 좋을 수도 있습니다. 임의의 중첩에 대해 작동하는 유일한 솔루션은 이 질문에서 찾을 수 있습니다.

def flatten(x): result = [] for el in x: if hasattr(el, "__iter__") and not isinstance(el, basestring): result.extend(flatten(el)) else: result.append(el) return result flatten(L) 

최상의 모델입니까? 내가 뭔가를 간과 했습니까? 문제가 있습니까?