python 打印菱形 閃電

閒來沒事用Python寫了一個打印菱形的小程序,不早了準備睡覺

############################實心菱形################################

line = int(input("菱形行數:"))
if not (line & 1):
    line += 1
l = line // 2
for i in range(-l,l+1):
    print(" " * abs(i) + "*" * ( line-abs( 2 * i )) )
	
#############################空心菱形##############################	
line = int(input("空菱形行數:"))
if not (line & 1):
    line += 1
l = line // 2
for i in range(-l,l+1):
    if abs(i)==l:
        print(" " * abs(i) + "*")
    else:	
        print(" " * abs(i) + "*"  + " " * ( line-abs( 2 * i )-2) + "*" )
#############################閃電型##############################
#方法一

line = int(input("閃電形行數:"))
if not (line & 1):
    line += 1
l = line // 2
for i in range(-l,l+1):
    if i < 0:
        print(" " * abs(i) + "*" * (line-l+i) )
    elif i > 0:	
        print(" " * (l) + "*" * (line-l-i) )
    else:
        print("*"*line)
#方法二
line = int(input("閃電形行數:"))
if not (line & 1):
    line += 1
l = line // 2
for i in range(-l,l+1):
    if i < 0:
        ss="*" * (line-l+i)
        print("{:>{}}".format(ss,l+1) )
    elif i > 0:	
        ss="*" * (line-l-i)
        print("{:{}}{}".format(" ",l,ss))
    else:
        print("*"*line)
#############################空心閃電型##############################
#ret = 'true' if 1==2 else 'false'
#print(ret)	-->	false

line = int(input("空心閃電形行數:"))
if not (line & 1):
    line += 1
l = line // 2
for i in range(-l,l+1):
    if i < 0:
        ss =  "*" + " " * (line-l+i-2) + "*" if i != -l else "*"
        print("{:>{}}".format(ss,l+1) )
    elif i > 0:
        ss = "*" + " " * (line-l-i-2) + "*" if i != l else "*"
        print("{:{}}{}".format(" ",l,ss))
    else:
        print("*"*line)				

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章