2013-10-03 4 views
1

Привет, мне было интересно, как я могу разбить вложенный вложенный список. У меня есть:Unnesting вложенные списки

list = [[[1,2,3]], [[4,5,6]], [[7,8,9]]] 

Я хотел бы выглядеть следующим образом:

new_list = [[1,2,3], [4,5,6], [7,8,9]] 

Как это сделать?

+0

возможно дубликат [Создание плоский список из списка списков в Python] (HTTP: // StackOverflow. com/questions/952914/make-a-flat-list-out-of-list-of-lists-in-python) – martineau

ответ

11
>>> L = [[[1,2,3]], [[4,5,6]], [[7,8,9]]] 
>>> [x[0] for x in L] 
[[1, 2, 3], [4, 5, 6], [7, 8, 9]] 
+0

Большое спасибо за вашу помощь. – ozzyzig

1

Для нескольких вложений:

def unnesting(l): 
    _l = [] 
    for e in l: 
     while isinstance(e[0], list): 
      e = e[0] 
     _l.append(e) 
    return _l 

Тест:

In [24]: l = [[[1,2,3]], [[[[4,5,6]]]], [[[7,8,9]]]] 
In [25]: unnesting(l) 
Out[25]: [[1, 2, 3], [4, 5, 6], [7, 8, 9]] 
Смежные вопросы