2013-11-15 66 views
1

這是我的第二個Python程序,用於我的Linux課程,並且我第一次在這裏發佈。 (我試圖張貼一張照片,但我沒有「名聲」)。我環顧四周,但找不到直接的答案。我希望我發佈的是正確的,併爲如此補救的事情道歉。爲什麼我以前在冒號時遇到這個錯誤?由於補救Python冒號錯誤

#!/usr/bin/python 
# My Name hw 11 

def maxArray(a): 
    max = a[0] 
    for element in a: 
     if element > max: 
      max = element 
    return max 
if__name__=="__main__": 

array = [3,1,6,2,4,9,0] 
maxArray(array) 
print max 

後「主要」我收到一個「無效語法」指着冒號:

+1

iCodez是正確的。另外,在'if __name __ =='__ main __「之後的塊的縮進:'應該在右邊一塊 – karthikr

回答

4

有四個方面的問題在這裏:

  1. 您以後需要空間if。否則,Python會看到if__name__,它將它視爲一個單詞。這是導致錯誤的原因。
  2. 你需要縮進這一行下的行,這樣你就不會得到IndentationError
  3. 您需要將返回值maxArray分配給一個變量,然後將其打印出來。否則,最後一行將拋出NameErrormax未定義。
  4. 您不應該命名變量max。這樣做會掩蓋built-in

這裏是你的代碼應該是什麼樣子:

#!/usr/bin/python 
# My Name hw 11 

def maxArray(a): 
    max_ = a[0] 
    for element in a: 
     if element > max_: 
      max_ = element 
    return max_ 
if __name__=="__main__": 

    array = [3,1,6,2,4,9,0] 
    max_ = maxArray(array) 
    print max_ 
+0

啊,非常感謝!希望有一天我能成爲回答問題的人! –

+0

@cparnin - 我不懷疑它。 :)技能來與經驗和經驗隨着時間而來。如果你保持某種東西,你最終會掌握它。 – iCodez