※ 引述《momo123163 (RT-boy)》之銘言:
: 批改娘上有一題是希望輸出格式化的金字塔
: 但我怎麼弄格式都不OK QQ
: 這是題目希望輸出的樣子:
: 最右邊都沒有空白!!
: *
: * *
: * * *
: * * * *
: 但我的程式碼如下:
: a = eval(input())
: for i in range(a):
: for j in range(a-i-1):
: print("2",end="")
: for k in range(i+1):
: print("*",end=" ")
~~~~~~~~~~~~~~~~~~
因為每次輸出*後都會接一個空白,
除非你多加一個判斷式判斷這是本行最後一個*:
print('*' if k == i else '* ', end = '')
: print("")
: 這樣的話雖然都很像(輸出2是我在練習時方便數空白數是否正確)
: 但我最右邊一定都會有空白
: 想請問該怎麼解決
: 再拜託各位大神幫幫忙了!!
這邊提供一個用join的寫法:
def pyramid(level):
if level < 1:
return
for i in range(1, level+1): # 1 base
print(' '*(level-i), end='') # print space
print(' '.join(['*']*i)) # pyramid body
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.114.237.106
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1494240166.A.BA4.html