开发者社区 问答 正文

如何使用 List 来理解来创建三角形列表?

用以下格式创建列表的最简单方法是:

[[0],
 [0,0],
 [0,0,0],
 [0,0],
 [0]]

这将是n = 3的情况,因此问题主要是如何反转表示每个列表中元素数量的迭代变量。

以下列表理解为例:

[[0]\*i+1) for i in range(3)]

将创建:

[[0],
 [0,0],
 [0,0,0]]

有什么漂亮的方法可以完成我想要的吗?

问题来源:stackoverflow

展开
收起
is大龙 2020-03-24 21:41:08 422 分享 版权
1 条回答
写回答
取消 提交回答
  • 有一种使用abs函数的好方法:

    >>> n = 3
    >>> [[0] * (n - abs(n - i)) for i in range(1, 2\*)]
    [[0],
     [0, 0],
     [0, 0, 0],
     [0, 0],
     [0]]
    

    回答来源:stackoverflow

    2020-03-24 21:41:14
    赞同 展开评论
问答地址: