在Python中,我想打印一个菱形*
的菱形:
$
位于钻石上半部分(上金字塔),其中没有*
,&
位于钻石的下半部分(下金字塔),其中没有*
。到目前为止,我只知道如何制作一个正面朝上的金字塔:
def pyramid(n):
for i in range(n):
row = '*'*(2*i+1)
print(row.center(2*n))
例如,如果调用的函数是print shape(7)
,那么它将打印[此图像]。
有什么想法吗?
答案 0 :(得分:1)
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)