python中输出菱形_用python打印菱形的实操方法和代码
python怎么打印菱形?下面給大家?guī)砣N方法:
第一種
rows = int(input('請(qǐng)輸入菱形邊長(zhǎng):\n'))
row = 1
while row <= rows:
col = 1 # 保證每次內(nèi)循環(huán)col都從1開始,打印前面空格的個(gè)數(shù)
while col <= (rows-row): # 這個(gè)內(nèi)層while就是單純打印空格
print(' ', end='') # 空格的打印不換行
col += 1
print(row * '* ') # 每一行打印完空格后,接著在同一行打印星星,星星個(gè)數(shù)與行數(shù)相等,且打印完星星后print默認(rèn)換行
row += 1
bottom = rows-1
while bottom > 0:
col = 1 # 保證每次內(nèi)循環(huán)col都從1開始,打印前面空格的個(gè)數(shù)
while bottom+col <= rows:
print(' ', end='') # 空格的打印不換行
col += 1
print(bottom * '* ') # 每一行打印完空格后,接著在同一行打印星星,星星個(gè)數(shù)與行數(shù)相等,且打印完星星后print默認(rèn)換行
bottom -= 1
輸出結(jié)果:
請(qǐng)輸入菱形邊長(zhǎng):
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))
輸出結(jié)果:
*
***
*****
*******
*****
***
*
第三種
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)
輸出結(jié)果:
*
***
*****
*******
*********
*******
*****
***
*
以上就是關(guān)于用python來畫出菱形的方法總結(jié),感謝大家的閱讀和對(duì)腳本之家的支持。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的python中输出菱形_用python打印菱形的实操方法和代码的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python数据清理的实践总结_Pyth
- 下一篇: u盘正确打开方法(u盘量产工具)