python-金字塔


1、正金字塔

如图:

代码如下:

level=int(input("请输入行数:"))
# 方式一:
for current_level in range(1,level+1):
    #控制空格个数
    for i in range(level-current_level):
        print(' ',end='')
    #控制*个数
    for j in range(2*current_level-1):
        print('*',end='')
    print()
#方式二:
for i in range(1,level+1):
    print(
        ' '*(level-i)+'*'*(2*i-1)
    )

2、倒金字塔

如图所示:

代码如下:

level=int(input("输入行数:"))
#方法1
for current_level in range(0,level):
    #控制空格个数
    for i in range(current_level+1):
        print(' ',end='')
    #控制*个数
    for j in range(level-2*current_level):
        print('*',end='')
    print()
#方法2
for i in range(level):
    print(' '*i+'*'*(level-2*i))

此两种方法有缺陷,行数只能输入奇数,输入偶数会出现少行的现象。如图所示:

优化代码如下:

#与正金字塔相对应
for i in range(level):
    print(' '*i+'A'*(2*level-2*i-1))

 测试结果如下:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM