2017-08-09 413 views
0

我遇到了我的任務問題。使用嵌套for循環打印python中的簡單矩陣

使用for循環打印出一個3x3的「 - 」矩陣。

它應該是這樣的:

- - - 
- - - 
- - - 

這是我來最接近的,但它不工作

x = "-" 
for i in range(3): 
    for n in range(3): 
     for x in range(3): 
      print x, 

您將需要嵌套的for循環來實現這一目標。

我一直在嘗試這一個小時,沒有運氣,有人請指出我在正確的方向?

+1

顯示您的代碼或沒有人會幫助您 –

+0

我們不是來回答您的任務。編輯:你到目前爲止嘗試過什麼? – SCramphorn

+1

那個小時你最近得到了什麼?顯示代碼和輸出。 – user2357112

回答

2
for i in range(21/7): 
    print ' '.join(['-' for _ in range(264/88)]) 
+1

你正在採取這個米奇?! '21/7'爲什麼不'3'? – SCramphorn

+0

我盡了最大努力讓代碼玩起來和 – kilojoules

+0

>。>這是有趣的歡鬧,也是痛苦的工作 – jmoon

1

在你的代碼,x被定義爲-,所以你不應該在它枚舉。 我編輯了您的代碼以生成工作版本。

請注意,在內部循環中,您需要在-之間放置空格,而在外部循環中則要移至下一行。

這裏是蟒3的代碼:

x = "-" 
for i in range(3): 
    for n in range(3): 
     print(x, end=' ') 
    print('\n') 

這裏是蟒2的代碼:

matrix = [[],[],[]] 

for x in range(0,3): 
    for y in range(0,3): 
    matrix[x].append("-") 

然後打印:

x = "-" 
for i in range(3): 
    for n in range(3): 
     print x, 
    print('\n') 
+0

這給我一個語法錯誤 – Bryan

+1

@Bryan看我的編輯。 python 2和3中的print語句有不同的格式,所以我添加了python 2版本。 –

+0

好的,謝謝,是啊我在Python 2 – Bryan

0

使用嵌套循環構造一個矩陣它:

for i in range(3): 
    print(matrix[i]) 
+2

需要嵌套循環 – SCramphorn

+0

哈哈讓我快速編輯這個 –

+0

我的導師要我使用嵌套循環 – Bryan

1

非常好的開始!

讓我們來思考一下,你試圖用第三循環來達到什麼目的。
(提示:你不需要第三個循環)。

如果你說出來,你需要發生就變得什麼:

1)打印一個「 - 」三次。 (內環)
2)打印新線
3)現在回去,重複步驟1)和2)三次(外環)

這隻會是2路,3不

試試這個:

x = "- " 
for i in range(3): 
    for n in range(3): 
     print x, 
    print "\n" 

你甚至可以縮短這

for i in range(3):  # print the following line 3 times 
    for n in range(3): # print 3 dashes, separated by a space 
     print "- ", 
    print "\n"   # begin a new line 

BTW,如果使用Python 2,是適當的,但對於Python 3,它需要更改爲print(x, end='')

+0

您的輸出沒有與OP想要的格式相同。 –

+0

你可以檢查一下,我想我也可以在你的評論之後編輯它,但是在我注意到你的評論之前。如果是這樣,你是正確的,我已經離開了新線,並在每個短劃線之間的空間。 – SherylHohman

+0

當我在python 2上運行你的代碼時,所有' - '形成一條垂直線(每3個之間有一個空格),而不是3條水平線。 –