如何从指定的数字返回三角形的列表列表?
示例:
>>> myList = triangle(3)
[0,0,0]
[1,1]
[2]
>>> myList
[[0,0,0], [1,1], [2]]
答案 0 :(得分:7)
试试这个:
def triangle(number):
return [[n]*(number-n) for n in range(number)]
示例输出:
>>> triangle(4)
[[0, 0, 0, 0], [1, 1, 1], [2, 2], [3]]
>>> triangle(5)
[[0, 0, 0, 0, 0], [1, 1, 1, 1], [2, 2, 2], [3, 3], [4]]
>>> triangle(3)
[[0, 0, 0], [1, 1], [2]]
打印三角形:
>>> print '\n'.join(map(str, triangle(3)))
[0, 0, 0]
[1, 1]
[2]
答案 1 :(得分:1)
这应该有效:
def triangle(n):
a=[]
for i in range(n):
b=[]
for j in range(n-i):
b.append(i)
a.append(b)
for row in a:
print row
编辑:更改了代码,以便函数以三角形形状打印元素。