Python 3.x Python从列表中创建子列表

Python 3.x Python从列表中创建子列表,python-3.x,list,Python 3.x,List,我有以下清单 colors = {a, b, c} n = 3 其中颜色和n都是动态构建的。我想使用n和列表中的元素创建一个子列表,以获得以下内容: lcolors = [[a, a, a], [b, b, b], [c, c, c]] 如果颜色不是动态的,那么很容易: lcolors = [[a]*n, [b]*n, [c]*n] 我试过: lcolors = colors * n 但这给了我一个包含9个项目的单一列表,而不是3个子列表,每个子列表包含3个项目: lcolors =

我有以下清单

colors = {a, b, c}
n = 3
其中颜色和n都是动态构建的。我想使用
n
和列表中的元素创建一个子列表,以获得以下内容:

lcolors = [[a, a, a], [b, b, b], [c, c, c]]
如果
颜色
不是动态的,那么很容易:

lcolors =  [[a]*n, [b]*n, [c]*n]
我试过:

lcolors = colors * n
但这给了我一个包含9个项目的单一列表,而不是3个子列表,每个子列表包含3个项目:

lcolors = [a, b, c, a, b, c, a, b, c]
这里提供的任何解决方案都无法解决此问题:


    • 你真的很接近。你只需要在
      颜色

      lcolors = [[x]*n for x in colors]
      

      如果我理解正确,您可以使用列表理解:

      lcolors=[[color]*n表示颜色中的颜色]