Вложенный список с использованием индексации и нарезки
Как мне нарезать или индексировать этот список, чтобы получить ответ ниже? Я пытался сделать несколько методов нарезки, и ничего не помогло мне.
L = [0, [], [1,2,3,4], [[5],[6,7]], [8,9,10]]
newL = [L[0],L[2][1],L[2][2],L[3][0]]
Ответ: [0, 2, 3, [5, 6], 8, 10]
newL - это то, что у меня есть, но я не могу получить разделение [6,7] во вложенном списке.
1 ответ
Решение
Начнем с:
L = [0, [], [1, 2, 3, 4], [[5], [6, 7]], [8, 9, 10]]
Мы хотим:
[0, 2, 3, [5, 6], 8, 10]
Давайте начнем с самого дальнего внутри. Нам нужно [5, 6]
, Они оба похоронены:
>>> L[3][0][0]
5
>>> L[3][1][0]
6
>>> [L[3][0][0], L[3][1][0]]
[5, 6]
Один слой дальше нам нужно 2, 3
:
>>> L[2][1]
2
>>> L[2][2]
3
Теперь собери это:
>>> [L[0], L[2][1], L[2][2], [L[3][0][0], L[3][1][0]], L[4][0], L[4][2]]
[0, 2, 3, [5, 6], 8, 10]