Python如何用*打印正三角、倒三角、等邊三角形、菱形及空心菱形
【問(wèn)題描述】
使用循環(huán)嵌套輸出三角形、菱形
1、分別使用*打印正三角、倒三角、等邊三角形、菱形、空心菱形
(1)正三角
*
**
***
****
*****
1)實(shí)現(xiàn)代碼
m=0
for w in range(1,6): #5行
# *的個(gè)數(shù)與行相同,range(1,2),第二行,range(1,3)
for m in range(1,w+1):
print('*',end='')
print()
2)輸出結(jié)果

(2)倒三角
*****
****
***
**
*
1)實(shí)現(xiàn)代碼
for i in range(1,6):
# range(1,6) range(1,5) range(1,4),找行與列之間的關(guān)系7-1=6;7-2=5,7-3=4....
for e in range(1,7-i):
print('*',end='')
print()2)輸出結(jié)果

(3)等邊三角形
*
***
*****
*******
*********
1)實(shí)現(xiàn)代碼
for a in range(1,6): # 外循環(huán)5行
for b in range(1,6-a): # 倒三角形
print(' ',end='') # 需要打印空格,不換行
for c in range(1,a*2): # 1,3,5,7..等腰三角形,range(1,2),range(1,4),range(1,6)....
print('*',end='')
print()2)輸出結(jié)果

(4)菱形
(以7行為例,因?yàn)榱庑问禽S對(duì)稱圖形,可將菱形分為兩部分,那就是一個(gè)正三角和一個(gè)倒三級(jí)拼接在一起了,我是將前4行一組,后3行一組)
*
***
*****
*******
*****
***
*
1)實(shí)現(xiàn)代碼
row=eval(input('請(qǐng)輸入菱形的行數(shù):'))
while row%2==0: #判斷行數(shù)的奇偶性,若為偶數(shù)則重新輸入
print('請(qǐng)重新輸入!')
row=eval(input('請(qǐng)輸入菱形的行數(shù):'))
# 輸出菱形
top_row=(row+1)//2 #上半部分的行數(shù)
for t in range(1,top_row+1):
for t2 in range(1,top_row+1-t):
print(' ',end='')
for t3 in range(1,t*2):
print('*',end='')
print() #當(dāng)兩個(gè)并列的for循環(huán)執(zhí)行結(jié)束后,在換行執(zhí)行
# 7行為例子
low_row=row//2 # 3
for l in range(1,low_row+1):
for l2 in range(1,l+1): #直角三角形
print(' ',end='')
for l3 in range(1,low_row*2-2*l+2): # 第1行-->5個(gè),range(1,6),第2行-->3個(gè),range(1,4),...
# for l3 in range(1,2*(low_row+1-l)):
# 第一次(1,low_row=3*2)=(1,6),(1,6+2)
print('*',end='')
print() #當(dāng)兩個(gè)并列的for循環(huán)執(zhí)行結(jié)束后,在換行執(zhí)行2)輸出結(jié)果

(5)空心菱形
{以7行為例,因?yàn)榱庑问禽S對(duì)稱圖形,可將菱形分為兩部分,前4行一部分(由一個(gè)倒三角+一個(gè)挖空的等腰三角形),后三行一部分(由一個(gè)正三角+一個(gè)倒立等腰三角形),挖空的三角形可以使用if-else語(yǔ)句判斷,if(如果)是在第一位或最后一位則打印*,else(否則)打印空格}
*
* *
* *
* *
* *
* *
*
這張圖我把空格都打印出來(lái)了,這樣更清楚。

1)實(shí)現(xiàn)代碼
row=eval(input('請(qǐng)輸入菱形的行數(shù):'))
while row%2==0: #判斷行數(shù)的奇偶性,若為偶數(shù)則重新輸入
print('請(qǐng)重新輸入!')
row=eval(input('請(qǐng)輸入菱形的行數(shù):'))
# 輸出菱形
top_row=(row+1)//2 #上半部分的行數(shù)
for t in range(1,top_row+1):
for t2 in range(1,top_row+1-t):
print(' ',end='')
for t3 in range(1,t*2):
if t3==1 or t3==t*2-1:
print('*',end='')
else:
print(' ',end='')
print() #當(dāng)兩個(gè)并列的for循環(huán)執(zhí)行結(jié)束后,在換行執(zhí)行
# 7行為例子
low_row=row//2 # 3
for l in range(1,low_row+1):
for l2 in range(1,l+1): #直角三角形
print(' ',end='')
for l3 in range(1,low_row*2-2*l+2): # 第1行-->5個(gè),range(1,6),第2行-->3個(gè),range(1,4),...
# for l3 in range(1,2*(low_row+1-l)):
# 第一次(1,low_row=3*2)=(1,6),(1,6+2)
if l3==1 or l3==(low_row*2-2*l+2)-1:
print('*',end='')
else:
print(' ',end='')
print() #當(dāng)兩個(gè)并列的for循環(huán)執(zhí)行結(jié)束后,在換行執(zhí)行
2)輸出結(jié)果

總結(jié)
到此這篇關(guān)于Python如何用*打印正三角、倒三角、等邊三角形、菱形及空心菱形的文章就介紹到這了,更多相關(guān)Python用*打印各種形狀內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于Python實(shí)現(xiàn)的車牌識(shí)別系統(tǒng)
本文將以基于Python的車牌識(shí)別系統(tǒng)實(shí)現(xiàn)為方向,介紹車牌識(shí)別技術(shù)的基本原理、常用算法和方法,并詳細(xì)講解如何利用Python語(yǔ)言實(shí)現(xiàn)一個(gè)完整的車牌識(shí)別系統(tǒng),需要的朋友可以參考下2023-10-10
Python在后臺(tái)自動(dòng)解壓各種壓縮文件的實(shí)現(xiàn)方法
這篇文章主要介紹了Python在后臺(tái)自動(dòng)解壓各種壓縮文件的實(shí)現(xiàn)方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11
Django框架使用內(nèi)置方法實(shí)現(xiàn)登錄功能詳解
這篇文章主要介紹了Django框架使用內(nèi)置方法實(shí)現(xiàn)登錄功能,結(jié)合實(shí)例形式詳細(xì)分析了Django框架內(nèi)置方法實(shí)現(xiàn)登錄功能的相關(guān)操作技巧與使用注意事項(xiàng),需要的朋友可以參考下2019-06-06
使用Python讓視頻剪輯批量自動(dòng)化功能實(shí)現(xiàn)
在日常工作和內(nèi)容創(chuàng)作中,視頻剪輯是一項(xiàng)常見但耗時(shí)的任務(wù),本文將介紹如何使用Python實(shí)現(xiàn)視頻剪輯自動(dòng)化,包括視頻剪切、拼接、特效添加等功能,感興趣的朋友跟隨小編一起看看吧2026-02-02
基于Python實(shí)現(xiàn)音樂(lè)節(jié)奏可視化效果
這篇文章主要為大家詳細(xì)介紹了如何基于Python語(yǔ)言實(shí)現(xiàn)音樂(lè)節(jié)奏可視化效果,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-06-06
Python字符串格式化format()方法運(yùn)用實(shí)例
這篇文章主要給大家介紹了關(guān)于Python字符串格式化format()方法運(yùn)用實(shí)例的相關(guān)資料,字符串格式化是Python編程中十分常用的部分,它可以幫助我們將更具可讀性的數(shù)據(jù)輸出到控制臺(tái)或?qū)懭胛募?需要的朋友可以參考下2023-08-08
將Python代碼打包成.exe可執(zhí)行文件的完整步驟
這篇文章主要給大家介紹了關(guān)于如何將Python代碼打包成.exe可執(zhí)行文件的完整步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05
python3+requests接口自動(dòng)化session操作方法
今天小編就為大家分享一篇python3+requests接口自動(dòng)化session操作方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10

