只用一个打印功能创建一个三角形

时间:2017-12-25 21:45:55

标签: python printing

有一些限制:

  1. 你不能只用字符串构建整个三角形然后打印。
  2. 代码必须使用循环。
  3. 我想要创建的输出:

    1 
    1 2 
    1 2 3 
    1 2 3 4 
    1 2 3 4 5 
    1 2 3 4 
    1 2 3 
    1 2 
    1 
    

    这是我们的考试问题,但经过几个小时的思考后我找不到解决方案。

2 个答案:

答案 0 :(得分:2)

这是一个带参数的版本:

print '\n'.join(' '.join(str(j + 1) for j in range(5 - abs(i))) for i in range(-5, 6))

或在Python 3中:

print('\n'.join(' '.join(str(j + 1) for j in range(5 - abs(i))) for i in range(-5, 6)))

答案 1 :(得分:1)

使用“\ n”表示换行符可以轻松完成:

print "1\n1 2\n1 2 3\n1 2 3 4\n1 2 3 4 5\n1 2 3 4\n1 2 3\n1 2\n1"

..或3.x

print("1\n1 2\n1 2 3\n1 2 3 4\n1 2 3 4 5\n1 2 3 4\n1 2 3\n1 2\n1")