Добавить значение в пустые списки в список списков по индексам этого пустого списка, используя python - PullRequest
0 голосов
/ 01 ноября 2019

У меня есть такой вложенный список,

 l=[[],[],[1,2],[],[5],[],[4,3],[]]

Теперь я получил индексы пустых списков вложенного списка.

indices=[0,1,3,5,7]

Теперь я хочу вставить /добавьте ноль к пустым спискам по индексу, чтобы список выглядел следующим образом:

l=[[0],[0],[1,2],[0],[5],[0],[4,3],[0]]

Я могу сделать это, используя,

x=[]
for i in l:
    if len(i)==0:
        x.append([0])
    else:
        x.append(i)

Но время выполнения будет огромным, яищу сортировки, чтобы сделать это эффективно.

1 Ответ

0 голосов
/ 01 ноября 2019

Вы можете использовать понимание списка, но это не гарантирует улучшение времени выполнения:

l = [[], [], [1, 2], [], [5], [], [4, 3], []]

result = [e or [0] for e in l]
print(result)

Вывод

[[0], [0], [1, 2], [0], [5], [0], [4, 3], [0]]
...