2013-10-29 72 views
-6

試圖編寫一個簡單的程序,介紹課程Comp Comp in Uni。只需編寫一個Python錯誤,讀取數字輸入並打印出來,如果它們不是按遞增順序排列的話。Python語法錯誤與變量

我有我的想法會工作,但它一直給我一個語法錯誤,我想不通爲什麼,請注意我有零編程經驗

n = input 
counter = input 
nonincreasing = True 
While counter <= n and nonincreasing = True 
get a value for nextnumber 

在行While counter <= n and nonincreasing = True它不斷給我counter是一個語法錯誤。

+0

'while'應該全部小寫,並且你不能同時子句中使用賦值運算符。 – falsetru

+0

縮進是錯誤的,雖然應該很小,但缺少':'和'='應該是== == –

+0

語法錯誤的stackoverflow是你的解釋器/編譯器。嘗試學習閱讀它的輸出。 (一個較少的錯誤版本應該是:''while counter <= n且nonincreasing == True:...'')。 – miku

回答

0

while需要小寫。

While counter <= n and nonincreasing = True 
get a value for nextnumber # This line needs to be indented 

像這樣:

while counter <= n and nonincreasing == True: 
    get a value for nextnumber # Like so 
+1

你留下了太多其他問題; '='是賦值,仍然是一個語法錯誤。不要使用'== True',它在這裏完全是多餘的,並且與其他操作符結合會導致操作符鏈或優先級問題混淆。 –

+0

@遊戲仍然回答不完整:(閱讀其他答案... –

+0

@GrijeshChauhan你是對的,但上面的例子甚至沒有有效的代碼,它的僞代碼。 –

4

有在此一噸的錯誤:將小寫

  1. While需求。請記住Python區分大小寫。
  2. 您需要使用==進行比較測試,而不是=,它用於變量賦值。但是,你甚至不需要這裏的== True;它什麼也沒做。
  3. 我敢肯定你打算在每個input之後加上()
  4. 在while語句的末尾需要冒號。
  5. 最後一行需要縮進(當然,在這種情況下它也應該是註釋)。

這是我想你的意思是:

n = input() 
counter = input() 
nonincreasing = True 
while counter <= n and nonincreasing: 
    # get a value for nextnumber 

不過,我可能有固定這個腳本,但你會不停的按這樣的錯誤,直到你學習Python。下面是一些參考:

http://www.tutorialspoint.com/python/python_overview.htm

http://wiki.python.org/moin/BeginnersGuide/Programmers