首页 > 解决方案 > 如何制作一个嵌套的 for 循环来打印 n, n-1 .... n - (n - 1)?

问题描述

我一直在尝试制作一个打印以下内容的嵌套 for 循环:如果 n = 5

5
5 4
5 4 3
5 4 3 2
5 4 3 2 1

您可以在下面找到我一直用来尝试获取它但它不起作用的代码:

def main():
    n = 5
    for i in range(1, n + 1):
        for j in range(1, i):
            print(n, end=' ')
            n = n - 1
        print('\n')

main()

标签: python-3.x

解决方案


您可以进行一些更改:

  • 存储n到变量并在内部循环中使用它,在每次迭代中减一。

  • 内部循环应该运行 until i+1,因为结束是独占的。


def main():
    n = 5
    for i in range(n):
        n1 = n
        for j in range(i+1):
            print(n1, end=' ')
            n1 -= 1
        print('\n')

main()

推荐阅读