Python實現列印實心和空心菱形
阿新 • • 發佈:2020-01-09
1.列印實心菱形
你好! 這是你第一次使用 Markdown編輯器 所展示的歡迎頁。如果你想學習如何使用Markdown編輯器,可以仔細閱讀這篇文章,瞭解一下Markdown的基本語法知識。
方法一:
a = int(input("請輸入菱形每條邊星星的個數:")) b = a c = a for i in range(1,a + 1): # 先列印正三角,由空格和*根據規律組成 print(" " * (b - 1),"*" * (2 * i - 1)) b -= 1 if i == a: # 臨界點,當列印到此,開始列印倒三角 for y in range(1,a): print(" " * y,"*" * (2*c-3)) c -= 1
方法二:
n = int(input("輸入要列印的菱形的每個邊的元素個數:")) list_a = [i for i in range(n)] # 生成前n行的行數列表,例如[0,1,2,3,4] list_b = list_a[0:len(list_a) - 1:] # 生成剩餘行數列表並反轉,例如[0,3] list_c = list_b[::-1] # 對剩餘行數列表並反轉便於列印操作 list_d = list_a + list_c # 將兩個列表合併 print(list_d) b = [' ' * (n - i) + '*' * (2 * i + 1) for i in list_d] # 根據規律,列印空格" "和"*" for line in b: print(line)
列印結果:
2.列印空心菱形
程式碼:
a = int(input("請輸入菱形每條邊星星的個數:")) b = a c = a print(" " * (a - 1),"*") for i in range(2,a+1): # 先列印正三角,由空格和*根據規律組成 print(" " * (b - 1) + "*" + " " * (2 * i - 3) + "*") b -= 1 if i == a: # 臨界點,當列印到此,開始列印倒三角 for y in range(2,a): print(" " * y+"*"+" "*(2*c-5)+ "*" ) c -= 1 print(" "*a+"*")
列印結果:
以上這篇Python實現列印實心和空心菱形就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。