2016-09-27 115 views
0

我想有這樣的輸出:嵌套循環Python中不工作

* * * 
2 2 2 
4 4 4 
6 6 6 
8 8 8 

我不能得到它,我嘗試過很多辦法,但我的代碼似乎並沒有工作。這是我目前的代碼:

for row in range(3): 
    print ("*", end = " ") 
    print() 
    for col in range(2,9,2): 
     print (row, end = " ") 
     print() 
print() 

我該怎麼辦?

回答

0
print('* * *') 
for col in range(2,9,2): 
    print (*[col]*3, sep=' ') 

要更清楚。

>>> a = 2 
>>> [a] 
[2] 
>>> [a]*3 
[2, 2, 2] 
>>> print(*[a]*3, sep=' ') # equal to print(a, a, a, sep=' ') 
2 2 2 
0

一開始,你只需要包含* * *可在最高層進行打印一排,外任何的循環:

print('* * *')

接下來,你需要從價值觀2(含)開始你的循環(獨家)在2步驟:

for col in range(2,9,2):

你並不需要在這裏使用任何end關鍵字,所以纔多次打印該行是不夠的:

print('{0} {0} {0}'.format(i))

所以最後的代碼塊如下所示:

print('* * *') 
for row in range(2,9,2): 
    print('{0} {0} {0}'.format(row)) 

你不需要添加另一個print()print無論如何已經以換行符結束。