您好,登錄后才能下訂單哦!
本篇文章為大家展示了怎么在python中打印菱形,代碼簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
第一種
rows = int(input('請輸入菱形邊長:\n')) row = 1 while row <= rows: col = 1 # 保證每次內循環col都從1開始,打印前面空格的個數 while col <= (rows-row): # 這個內層while就是單純打印空格 print(' ', end='') # 空格的打印不換行 col += 1 print(row * '* ') # 每一行打印完空格后,接著在同一行打印星星,星星個數與行數相等,且打印完星星后print默認換行 row += 1 bottom = rows-1 while bottom > 0: col = 1 # 保證每次內循環col都從1開始,打印前面空格的個數 while bottom+col <= rows: print(' ', end='') # 空格的打印不換行 col += 1 print(bottom * '* ') # 每一行打印完空格后,接著在同一行打印星星,星星個數與行數相等,且打印完星星后print默認換行 bottom -= 1
輸出結果:
請輸入菱形邊長: 5 * * * * * * * * * * * * * * * * * * * * * * * * *
第二種
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))
輸出結果:
* *** ***** ******* ***** *** *
第三種
def stars(n): RANGE1 = [2*i+1 for i in range(n)] RANGE2 = [2*i+1 for i in range(n)[::-1]][1:] RANGE = RANGE1 + RANGE2 RANGE_1 = [i for i in range(n)[::-1]] RANGE_2 = [i for i in range(n)[1:]] RANGE_12 = RANGE_1 + RANGE_2 for i in range(len(RANGE)): print (' '*RANGE_12[i] + '*'*RANGE[i]) if __name__ == "__main__": stars(5)
輸出結果:
* *** ***** ******* ********* ******* ***** *** *
上述內容就是怎么在python中打印菱形,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。