【问题标题】:Python Create a list of sublists from a listPython从列表中创建子列表列表
【发布时间】:2020-04-07 21:25:43
【问题描述】:

我有以下列表

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

colors 和 n 都是动态构建的。我想使用n 和列表的元素创建一个子列表以获得以下内容:

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

如果colors 不是动态的,那很容易:

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

我试过了:

lcolors = colors * n

但这给了我一个包含 9 个项目的列表,而不是 3 个每个包含 3 个项目的子列表:

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

这里提供的解决方案都不能解决这个问题:

【问题讨论】:

    标签: python-3.x list


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      你真的很亲密。你只需要一个理解循环 colors

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多