2016-08-03 98 views
-2

我有一些代码上下颠倒数三角形

for i in range(0,11): 
    for j in range(0,10-i): 
     print(" ", end="") 

    for k in reversed(range(0,i)): 
     print(k, end="") 
    print()` 

产生以下

 0 
    10 
    210 



...... 

我需要它来打印这样的事情

0 1 2 3 4 5 6 
    0 1 2 3 4 5 
     0 1 2 3 4 
     0 1 2 3 
      0 1 2 
      0 1 
       0 

我试着用range(10,0,-1)但这只是在“左侧”打印数字。任何帮助,将不胜感激!

+2

在命令行上的输出从左边开始,这样你就可以打印空白格式化输出正确 – Querenker

回答

1

在这里你去:

for i in range(10,-1,-1): 
for j in range(0,10-i): 
    print(" ", end="") 

for k in reversed(range(0,i)): 
    print(k, end=" ") 
print() 

它产生的输出:

9 8 7 6 5 4 3 2 1 0 
    8 7 6 5 4 3 2 1 0 
    7 6 5 4 3 2 1 0 
     6 5 4 3 2 1 0 
     5 4 3 2 1 0 
      4 3 2 1 0 
      3 2 1 0 
       2 1 0 
       1 0 
        0 
+1

完成,谢谢@ Sayan98! – AJP