我正在尝试建立一个钻石模式的钻石模式。让我来给你解释一下。 目前我有一个函数,可以打印一个菱形图案,输入大小
def diamond(n,space=' '):
for i in range(n):
print(space*(n-1-i) + "* "*(i+1))
for l in range(n-1,0,-1):
print(space*(n-l) + "* "*(l))
diamond(2)
我的输出将是2号钻石
*
* *
*
现在我真正想要的是用这个钻石图案替换每颗星星。 期望的输出看起来像
应该能够在所有尺寸上做到这一点,其中该图案的每个星形都被整个图案替换
多谢各位
使用此递归函数,您可以在屏幕的任何位置打印复杂的菱形
例如,
draw_diamond(5, 100, 27)
打印尺寸为27的菱形,其左上角距离终端顶部5个字符,距离终端左侧100个字符:您可以使用
diamond_size=9
获得所需的输出。可能的尺寸为1、3、9、27、81、243等可以通过
diamond_size=3**2
获得所需的输出:您可以使用np.array作为网格,并将“*”与位置[i][j]放在一起。在这段代码中,制作空数组,然后检查*的位置,最后设置外部菱形位置。可能有更好的代码,但这仍然有效
对于n=2
对于n=3
光标前进后,不能转到上一行。相反,你可以用不同的方法来处理这个问题。如果您有一组要打印的单词,例如
您可以按如下方式
n
次打印它们:对于
n = 2
,这给出了相关问题 更多 >
编程相关推荐