我想写一个python程序来打印上面的形状(我是python的新手),但是我已经编写了单菱形的程序,现在我有一个问题要解决这个问题,你会指南找到算法吗? * * *** ************* *** *** * *这是单颗钻石:def Diamond(rows): n = 0 for i in range(1, rows + 1): for j in range (1, (rows - i) + 1): print(end = " ") while n != (2 * i - 1): print("*", end = "") n = n + 1 n = 0 print() k = 1 n = 1 for i in range(1, rows): for j in range (1, k + 1): print(end = " ") k = k + 1 while n <= (2 * (rows - i) - 1): print("*", end = "") n = n + 1 n = 1 print() rows = int(input())Diamond(rows)
2 回答
守着一只汪
TA贡献1872条经验 获得超3个赞
我很无聊,你来了。
In [36]: def print_diamonds(width, ds):
...: r = width//2
...: for i in range(-r, r+1):
...: print((' '*(abs(i)) + '*'*((r-abs(i))*2+1) + ' '*(abs(i)))*ds)
...:
In [37]: print_diamonds(5, 2)
* *
*** ***
**********
*** ***
* *
临摹微笑
TA贡献1982条经验 获得超2个赞
您的问题很模糊,但这是每条线一颗钻石的函数。我不确定你期待什么。要明确。
vect = ('*', '***', '*****', '***', '*')
def method():
for i in range(0,5):
print(abs((2-i))*" ",vect[i])
添加回答
举报
0/150
提交
取消