2015-06-05 130 views
0

我是Python初學者。 我有困難解決我的問題:Python中的「For」嵌套循環:Order T

for循環使用嵌套,在 打印字符T的直角三角形的屏幕,三角形是一個字符寬最窄處和最寬處七個字符寬:

T 
TTT 
TTTT 
TTTTT 
TTTTTT 
TTTTTTT 

 T 
    TT 
    TTT 
    TTTT 
    TTTTT 
TTTTTT 
TTTTTTT 

任何想法?

+3

嘗試自己先做好功課。如果您有任何問題,您的教科書,教師,同學和Google會很樂意提供幫助。如果他們不能幫助(他們可以),問問。 – TigerhawkT3

+0

非常感謝你:) – JamesCornel

+0

英語不是我的第一語言。我是新來的。我希望社區能幫助我提高自己的英語水平和我的計劃技能。 – JamesCornel

回答

4

我不會爲你寫的代碼,但我可以給你一些提示:

  • 嵌套循環指的另一循環內循環,在這種情況下,一個循環是通過連續行迭代,第二在每一行
  • 第二個例子需要同樣作爲第一個打印字符,但你還需要檢查內環的指標,並決定是否打印空格或「T」字
+0

感謝您的建議;) – JamesCornel

0

我希望你已經得到了答案:)

模式#1

def triangle(n): 
    for i in range(1, n +1): 
     print ('T' * i).rjust(n, ' ') 

triangle(7) 

##Results >>> 

     T 
    TT 
    TTT 
    TTTT 
    TTTTT 
TTTTTT 
TTTTTTT 

模式#2

def triangle1(n): 
    for i in range(1, n +1): 
     print ('T' * i) 

triangle1(7) 

# Results >>>> 
T 
TTT 
TTTT 
TTTTT 
TTTTTT 
TTTTTTT 

模式生成僅通過使用用於循環

在這裏,我試圖產生與只有for循環的幫助,並將非常普遍的方式。有目的地,我沒有使用任何現成的功能,因此您可以隨時對其進行優化。

模式#1

def triangle(n): 
    # Iterate through number of columns 
    for i in range(1, n +1): 
     s = "" 
     # Iterate through number of rows 
     for j in list(range(i)): 
      s += "T" 
     print s 

triangle(7) 

模式#2

def triangle1(n): 
    # Iterate through number of columns 
    for i in range(1, n +1): 
     s = "" 
     # Iterate through number of rows 
     for j in list(range(i)): 
      blank = "" 
      # Generate 'blank spaces' 
      for k in (range(n - i)): 
       blank += " " 
      # Generate 'T' 
      s += "T" 
     print blank + s 

triangle1(7) 
+0

您可以使用嵌套for循環來獲得這些結果 - 您將成爲您的良好鍛鍊。 :) –

+0

@JamesCornel - 有沒有示例代碼爲你工作? –

+0

它的工作:)非常感謝你:) – JamesCornel