python3 打印菱形

题目及程序如下:

#打印如下图型:
#   *
#  ***
# *****
#*******
# *****
#  ***
#   *
def fun1():
    f = -1
    j = 4
    for i in range(4):
        j -=1
        f += 2
        print(j*' ' + f * '*')
    for i in range(3):
        j +=1
        f -= 2
        print(j*' ' + f * '*')
####print('x'.center(7))
def fun2():
    f = -1
    for i in range(4):
        f += 2
        print((f * '*').center(15))
    for i in range(3):
        f -= 2
        print((f * '*').center(15))
fun1()
print('---------------------')
fun2()

自己写的程序果然很奇葩,只能说我的思路从来没在正题上,但是条条大路通罗马,最终通过自己的思索,没有额外利用其他人的方式方法,只是通过最基础的应用解决了画菱形的问题,非常开心了o( ̄▽ ̄)ブ
方法1:
通过自己观察的规律发现,空格和*都是相当有规
律的,空格从1到四行是3,2,1,0,*是1,3,5,
7,四行到七行则相反利用这个规律可以很简单粗
暴的完成这个程序。
方法2:
利用print函数中的打印对齐能力,(左对齐ljust(),
右对齐rjust(),以及居中对齐center())再简单了解
*的出现规律就好了

上一篇:JS:函数的实参可以是任何值及函数返回值的类型


下一篇:「文山玩Python」了不起的代码执行顺序