Python: печатать непустые списки при наличии нескольких списков - PullRequest
0 голосов
/ 05 мая 2020

Допустим, у меня есть 10 списков с именем aj:

Я могу проверить, какой список пуст

если a.empty:

сделать что-нибудь

Но каким образом я могу распечатать только непустые списки:

для всех списков в aj: print (непустые списки)

Ответы [ 3 ]

1 голос
/ 05 мая 2020

попытка понимания списка:

>>> list_of_lists = [[], [1], [], [2,3],[]]
>>> list_of_lists
[[], [1], [], [2, 3], []]
>>> [ l for l in list_of_lists if l]
[[1], [2, 3]]

потому что и пустой список не правдивый , if l оценивается как ложь, когда список пуст, поэтому он не засчитывается.

0 голосов
/ 05 мая 2020

предположим, что вы перегруппировали свои 10 списков в список L, так что L теперь является списком из ваших 10 списков, поэтому этот образец кода распечатывает непустые списки, что означает те, у которых более одного элемента: for l in L: if (len(l)>0): print(l)

0 голосов
/ 05 мая 2020

вы пробовали просто проверить любой элемент в списке?

for list_i in all_lists:
  if list_i:
    print(list_i)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...