用Python打印形状

2024-04-28 02:25:43 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python中,我想打印星号的菱形*

  • 在没有*的菱形(上金字塔)的上半部分使用$,并且
  • 在钻石(下金字塔)的下半部分有&,那里没有*

到目前为止,我只知道如何制作一个正上方的金字塔:

def pyramid(n):
   for i in range(n):
       row = '*'*(2*i+1)
       print(row.center(2*n))

例如,如果调用的函数是print shape(7),则它将打印[此图像]。

有什么想法吗?


Tags: 函数in图像pyramidfordefrange星号
1条回答
网友
1楼 · 发布于 2024-04-28 02:25:43
def shape(n):
    for i in range(2*n+ 1):
        if (i < n):
            print "$" * (n - i) + "*" * 2 * i + "$" * (n - i)
        elif i == n:
            print "*" * 2 * n
        elif i > n:
            print "&" * (i - n) + "*" * 2 *  (2* n - i) + "&" * (i - n)

相关问题 更多 >