用以下格式创建列表的最简单方法是:
[[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
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
有一种使用abs
函数的好方法:
>>> n = 3
>>> [[0] * (n - abs(n - i)) for i in range(1, 2\*)]
[[0],
[0, 0],
[0, 0, 0],
[0, 0],
[0]]
回答来源:stackoverflow