Как частично извлечь элементы в списке? - PullRequest
2 голосов
/ 26 января 2020

l = [[[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]],[[[13,14,15],[16,17,18]],[[19,20,21],[22,23,24]]]]

l1=l[0][0][0] (т.е. [1, 2, 3])

l2=l[0][1][0] (т.е. [7, 8, 9])

Существует ли более быстрый способ получения список [[1, 2, 3],[7, 8, 9]] в одном go, без перестановки исходного списка?

1 Ответ

2 голосов
/ 26 января 2020

Вот два способа добиться этого:

  1. распаковать, чтобы получить нужные списки, а затем собрать их в список

    [[x, _], [y, _]] = l[0]
    
    print([x, y])
    

    output :

    [[1, 2, 3], [7, 8, 9]]
    
  2. использование next и zip встроенных функций:

    print(list(next(zip(*l[0]))))
    

    вывод:

    [[1, 2, 3], [7, 8, 9]]
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...