Как изменить список элементов списка python - PullRequest
0 голосов
/ 30 мая 2020

У меня есть список списков

 check = [['KH8X070.jpeg', 'ZDO9A8O.jpeg', 'ZW25RD8.jpeg', '6ZLXW92.jpeg', 'HVLA5UT.jpeg', 'A4UDC12.jpeg', '2X5KO9A.jpeg', '5HZR4VV.jpeg', '24FWS4S.jpeg'], ['Z2QC6PW.jpeg', 'EHMK14E.jpeg', 'RTV0PRH.jpeg', '71S643D.jpeg', 'KECHDQ9.jpeg', 'RU6PYPB.jpeg'], ['UG9Z4SQ.jpeg', 'H0Y3SYV.jpeg', '61HCFOK.jpeg', '14KE527.jpeg', 'XMSM050.jpeg', '5KFI2V3.jpeg', 'QSJMKUB.jpeg', 'S6TX0ZM.jpeg', '8JV3K1Y.jpeg', 'XI9OOI7.jpeg', 'JMWDOPM.jpeg'], ['0SAXG3I.jpeg', 'LA5HJNO.jpeg', 'PHHAUSA.jpeg', '900Z7S7.jpeg']]

такой, что у меня есть:

 check = [[0,0,0,0,0,0,0,0,0],[1,1,1,1,1,1], [2,2,2,2,2,2,2,2,2,2,2], [3,3,3,3]]

Я хочу изменить его так, чтобы в списке индексов 0 списка списка я у меня будет 0 насквозь, в индексе 1 у меня будет 1 насквозь, в индексе 2 у меня будет 2 насквозь и так далее.

for i, j in enumerate(check):
  checks = [...]

Я знаю, что это должно быть понимание списка, но не знаю, как go об этом. Вот почему я пришел сюда за помощью.

Ответы [ 2 ]

0 голосов
/ 01 июня 2020

Вышеуказанное не совсем даст вам нужный результат. Но то, что вы можете сделать, это

arr = []
for i, j in enumerate(check):
    length = j
    arr.append([i]*length)

Это должно работать отлично, я попробовал, и он работал нормально. Сообщите мне, как это работает для вас.

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

Вот мой вариант с однострочным кодом:

>>> [map(lambda val : i, arr) for i,arr in enumerate(check)]
...