我正在尝试将一个人选择的文本形成图形。
我已经制作了一个正方形、一个金字塔和一个平行四边形。
但当我试图制作一个圆形时,我陷入了困境。我的想法是使用
我不确定这样做是否会看起来像一个圆。下面是代码示例,其中包括金字塔和圆形部分的代码。我知道对于圆形,我仍需要处理空格,但由于我不知道如何首先让所有东西正常工作,因此我还没有考虑过我将如何在那段代码中处理空格。
但当我试图制作一个圆形时,我陷入了困境。我的想法是使用
for i in range(1,height/2)
,它会打印i次文本(例如--)。然后我想要另一个循环来完全相反地打印,从height/2
到height
,它应该首先打印height/2*
的文本,在每次for循环重新开始时,它应该再打印一次少的文本。我不确定这样做是否会看起来像一个圆。下面是代码示例,其中包括金字塔和圆形部分的代码。我知道对于圆形,我仍需要处理空格,但由于我不知道如何首先让所有东西正常工作,因此我还没有考虑过我将如何在那段代码中处理空格。
def print_pyramid(height):
text = raw_input("Please give in what your pyramid needs to be formed from, you can choose two **, two --, or two letters")
for i in range(1,height+1):
print (height-i+1)*" ", text * i
def print_circle(height):
text = raw_input("Give in what your circle is made of: **, -- or two letters.")
for i in range(1,height/2):
print text*i
for j in range ((height/2)-1,(height/2)+1):
print text*j
for h in range((height/2)+2, height+1):
print text*((height/2)-h)