天天看點

兩種使用python列印菱形的方法

1、使用center方法
           
s = '*'
for i in range(1, 8, 2):
    print((s*i).center(7))
for i in reversed(range(1, 6, 2)):
    print((s*i).center(7))
           
2、使用普通方法
           
#  coding:utf-8
rows = int(input('輸入列數: '))
i = j = k = 1
#  聲明變量,i用于控制外層循環(圖形行數),j用于控制空格的個數,k用于控制*的個數
#  列印菱形
print("列印空心等菱形,這裡去掉if-else條件判斷就是實心的")
for i in range(rows):
    for j in range(rows - i):
        print(" ", end=" ")
        j += 1
    for k in range(2 * i - 1):
        if k == 0 or k == 2 * i - 2:
            print("*", end=" ")
        else:
            print(" ", end=" ")
        k += 1
    print ("\n")
    i += 1
    #  菱形的下半部分
for i in range(rows):
    for j in range(i):
        #  (1,rows-i)
        print(" ", end=" ")
        j += 1
    for k in range(2 * (rows - i) - 1):
        if k == 0 or k == 2 * (rows - i) - 2:
            print("*", end=" ")
        else:
            print(" ", end=" ")
        k += 1
    print("\n")
    i += 1