Python 模式一';I’我想打印的东西是颠倒的
好吧,我知道这是超基本的,我可能应该知道我在这里做什么,但我被困在尝试翻转这个该死的三角形。我一直对需要交换的变量感到困惑。 这个三角形从一颗星星开始,然后向下迭代形成一个完整的三角形。我需要它从一开始就大到一颗星。有点像漏斗。请,谢谢你,再请一次 代码如下:Python 模式一';I’我想打印的东西是颠倒的,python,function,Python,Function,好吧,我知道这是超基本的,我可能应该知道我在这里做什么,但我被困在尝试翻转这个该死的三角形。我一直对需要交换的变量感到困惑。 这个三角形从一颗星星开始,然后向下迭代形成一个完整的三角形。我需要它从一开始就大到一颗星。有点像漏斗。请,谢谢你,再请一次 代码如下: def up_arrow(arrow): char = arrow index = 0 size = 6 while index < size: spaces = " &qu
def up_arrow(arrow):
char = arrow
index = 0
size = 6
while index < size:
spaces = " " * (6 - index)
print(spaces + char)
char += arrow * 2
index += 1
def向上箭头(箭头):
字符=箭头
索引=0
尺寸=6
而索引<大小:
空格=“”*(6-索引)
打印(空格+字符)
字符+=箭头*2
指数+=1
在循环中,您不断地将索引增加1,直到它达到6,并且您不断地用两个箭头增加字符的长度,使其在6*2-1箭头处结束。那么,你试过扭转这种局面吗
从字符串大小开始
*2-1箭头
s,将索引
设置为大小
,每次迭代递减索引
,直到达到0,以及每次从字符
中删除两个字符:
def down_arrow(arrow):
size = 6
index = size
char = arrow * (size * 2 - 1)
while index > 0:
spaces = " " * (6 - index)
print(spaces + char)
char = char[2:]
index -= 1
down_arrow('.')
请注意,我一直试图坚持您最初编写它的方式,有更多的最佳方式来实现这一点
例如,虽然仍仅打印此类型的箭头,但此函数可以同时执行以下两项操作:
def arrow(ch, size, up=True):
for i in range(1, size + 1) if up else range(size, 0, -1):
print(' ' * (size - i) + ch * (2 * i - 1))
arrow('.', 6)
arrow('.', 6, up=False)
不客气。如果您认为答案完全回答了您的问题,请接受带有复选标记的答案,这样它就不再显示为未回答。