python怎么打印奇数菱形_python怎么打印菱形

5d11bd176f6b9648.jpg

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怎么打印菱形的详细内容,更多请关注php中文网其它相关文章!

article_wechat2021.jpg?1111

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值