Python Создать список подсписков из списка - PullRequest
2 голосов
/ 08 апреля 2020

У меня есть следующий список

colors = {a, b, c}
n = 3

Где оба цвета и n строятся динамически. Я хочу создать подсписок, используя n и элементы списка, чтобы получить следующее:

lcolors = [[a, a, a], [b, b, b], [c, c, c]]

, если colors не был динамическим c, это было легко:

lcolors =  [[a]*n, [b]*n, [c]*n]

Я пытался:

lcolors = colors * n

, но это дало мне один список с 9 элементами вместо 3 подсписков по 3 элемента в каждом:

lcolors = [a, b, c, a, b, c, a, b, c]

Ни один из Решения, предлагаемые здесь, решают это:

Ответы [ 2 ]

3 голосов
/ 08 апреля 2020

Если я правильно понял, вы можете использовать понимание списка:

lcolors = [[color] * n for color in colors]
3 голосов
/ 08 апреля 2020

Вы были действительно близко. Вам просто нужно циклическое понимание по colors

lcolors = [[x]*n for x in colors]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...