Python打印输出等腰三角形和空心等腰三角形

等腰三角形

n是三角形的总行数,i是第多少行,先打印n-i个空格,然后打印2i-1个星号,最后换行开始打印下一行

n = int(input("请输入要打印的行数"))
i = 1
while i <= n:
    j = 1
    while j <= n-i:
        print(" ",end="")      # 打印n-i个空格
        j += 1
    k = 1
    while k <= 2*i-1:
        print("*",end="")      # 打印2i-1个星号
        k += 1
    print("")      # 换行
    i += 1

空心等腰三角形

大体与等腰三角形类似,具体不同之处请看代码

n = int(input("请输入要打印的行数"))
i = 1
while i <= n:
    j = 1
    while j <= n - i:
        print(" ",end="")      # 打印n-i个空格
        j += 1
    k = 1
    while k <= 2*i-1:
        if k == 1 or k == 2*i-1 or i == n:      # 当k等于1或2i-1(第一个或最后一个)或i等于n(最后一行)时打印星号
            print("*",end="")
        else:
            print(" ",end="")      # 否则打印空格
        k += 1
    print("")
    i += 1

可以试着在纸上画一下,比较容易看出规律。

你可能感兴趣的:(Python)