编码逐渐增加的三角形

时间:2017-02-14 13:51:04

标签: python

好的,所以我对编程很新,我应该创建一个使用嵌套循环输出以下内容的程序

1)  1
2)  1, 2
3)  1, 2, 3
4)  1, 2, 3, 4
5)  1, 2, 3, 4, 5

所以基本上每次迭代都会添加序列中的下一个数字,到目前为止我已经找到了如何使用代码逐渐增加数字的方法

for outer in range(1,6):
    print str(outer)+")",
iv尝试了几乎所有事情,但无法弄明白!

3 个答案:

答案 0 :(得分:0)

这应该可以解决问题:

def triangle_printer(n):
    for i in range(1, n+1):
        print("%d ) %s" % (i, ", ".join(str(x) for x in range(1, i+1))))

检查出来:

triangle_printer(5)

1 ) 1
2 ) 1, 2
3 ) 1, 2, 3
4 ) 1, 2, 3, 4
5 ) 1, 2, 3, 4, 5

使用join语法可以帮助您打印一行中给定范围内的所有数字,而不是让您首先保留另一个for循环您要打印的所有数字,然后打印它们。

答案 1 :(得分:0)

简单的方法:

def triangle_print(height):
    sequence = range(1, height + 1)
    for unit in sequence:
        sequence_print = ', '.join(map(str, sequence[:unit]))
        print "{})  {}".format(unit, sequence_print)

示例输出:

>>> triangle_print(5)
1)  1
2)  1, 2
3)  1, 2, 3
4)  1, 2, 3, 4
5)  1, 2, 3, 4, 5

答案 2 :(得分:-2)

将它们保存在列表中。

numbers = []

for number in range(6):
    numbers.append(number)
    print(numbers)