在Python 3.4.2中打印颠倒的三角形?

时间:2015-02-05 21:09:58

标签: python loops python-3.x

所以,对于我的编程类,我应该编写一个输出它的程序:

oooooo
ooooo
oooo
ooo
oo
o

我已经能够使程序输出三角形正面,但即使在网上寻求帮助之后,我也找不到将三角形颠倒过来的解决方案。这是我的代码:

def main():

base_size = 6

for r in range (base_size):
    for c in range (r + 1):
        print('o', end = '')
    print()

main()

这是我得到的输出:

o
oo
ooo
oooo
ooooo
oooooo

有人可以帮帮我吗?我是新手,所以这对我来说很难,尽管对你们来说这可能很简单。

提前致谢!

2 个答案:

答案 0 :(得分:4)

你非常接近。您可以使用range功能,但可以使用-1n步入0

您还可以通过将字符乘以整数来创建字符串。

def triangle(n):
    for i in range(n, 0, -1):
        print('o' * i)

测试

>>> triangle(6)
oooooo
ooooo
oooo
ooo
oo
o

答案 1 :(得分:0)

带有否定步骤的范围将使用step = -1执行技巧(end,ini,step),也可以通过使用列表和连接来消除一个for循环:

def trig(base):
   for i in range(base, 0, -1):
       l = ['o']*i
       print(''.join(l))

编辑:@Cyber​​答案要好得多,不知道你可以使用"次"操作员直接在字符串。