使用嵌套循环打印三角形图案

时间:2015-10-12 19:18:58

标签: python python-3.x for-loop nested-loops

如果有人输入的高度是2,我需要制作一个看起来如此的“金字塔”:

 *
***

或者如果有人输入大约6的高度,它将如下所示:

     *
    ***
   *****
  *******
 *********
***********      

我找到了上一个三角形的代码:

n = int(input("Enter a value for n: "))
for x in range(1, n+1):
    for y in range(n, 0, -1):
        if y > x:
            print(" ", end = "")
        else:
            print("*", end = "")
    print("")
for x in range(1, n):
    for y in range(n):
        if y < x:
            print(" ", end = "")
        else:
            print("*", end = "")
    print("")

打印三角形

     *
    **  
   ***
  ****
 *****
******
 *****
  ****
   ***
    **
     *

2 个答案:

答案 0 :(得分:0)

您可以使用format 3 行轻松完成此操作

>>> n = int(input("Enter a value for n: "))
Enter a value for n: 6
>>> for i in range(1,n*2,2):
...      print("{}{}".format(' '*(n-i/2-1),'*'*i))
... 
     *
    ***
   *****
  *******
 *********
***********

答案 1 :(得分:0)

我认为这更容易

n = int(input("Please enter an integer: "))
for x in range(1, n+1):
    print("*" * x)
for y in range(n-1, 0, -1):
    print("*" * y)