2016-01-26 92 views
0

我正在處理一個分配,以至於我需要在用戶鍵入他想要的維度後打印一個「菱形」。示例;Python迭代地聲明變量

如果用戶鍵入5,它看起來像這樣:

| 
||| 
||||| 
||| 
    | 

如果用戶鍵入10,它看起來像這樣:

 | 
    ||| 
    ||||| 
    ||||||| 
    ||||||||| 
    ||||||||| 
    ||||||| 
    ||||| 
    ||| 
     | 

我的想法是初始化爲每行一個數組,我需要打印,但我不知道如何自動初始化多個陣列對應於用戶輸入的號碼。

任何幫助,歡迎隨時告訴我,如果你我要去錯誤的方式!

+0

'行= [ 「some_char」] * 10' – furas

+0

得到用戶輸入尺寸,然後根據輸入做一個for循環和打印數組 –

回答

1

如果它可以幫助你可以使用「數組」(或者更確切地說是二維列表)。

要使用10個字母「X」

row = [ "X" ] * 10 

創造行,但打造「陣列」 10行,你不能這樣做

array = [ [ "X" ] * 10 ] * 10 

,因爲你的所有行以引用內存中的空間相同。

你需要

array = [] 

for i in range(10) 
    row = [ "X" ] * 10 
    array.append(row) 

或更短

array = [ [ "X" ] * 10 for i in range(10) ] 

(代替"X"可以使用空間" "

+0

謝謝!它確實有幫助! :) – Gaboik