Python - Создать список списков из других значений списка - PullRequest
0 голосов
/ 01 июня 2018

Мне нужно создать список списков особым образом:

[3, 1, 4] -> [[1, 2, 3], [1], [1, 2, 3, 4]]

Это означает, что каждый список в списке списков должен находиться в диапазоне заданных значений списка.Я пробовал что-то вроде:

L = [3, 1, 4]
q = [i for i in L]
print(list([x] for x in range(y for y in q)))

Но он возвращает ошибку TypeError: генератор не может быть интерпретирован как целое число

Все это должно быть одним выражением генератора.

1 Ответ

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

Использование list comprehension.

Попробуйте:

L = [3, 1, 4]
print([list(range(1, i+1)) for i in L])

Вывод:

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