2016-03-15 126 views
2

我看不到這裏的無效語法是什麼,任何幫助將不勝感激。elif語句中的語法無效

if alpha == "alpha": 
    updatefile('Class 1 Results.csv',0,"1") 

    elif Class == "2":  
     with open('Class 2 Results.csv', 'a') as f: 
      file_writer = csv.writer(f, delimiter=',',lineterminator='\n') 
      file_writer.writerow((name, score))sortcsv('Class 2 Results.csv', 0) 
+1

縮進級別錯誤。它需要與「if」處於同一水平。 Python對空白敏感。 – poke

+0

問題:您是否嘗試使用'Class'作爲變量名稱?小寫名稱建議用於Python函數和變量([見本答案](http://stackoverflow.com/q/159720/3345375)),'class'是[關鍵字](http:// www。 programiz.com/python-programming/keyword-list)。 – jkdev

+0

Python縮進是語言語法的一部分。你需要放棄你的elif塊。 –

回答

3

試試這個:

if alpha == "alpha": 
    updatefile('Class 1 Results.csv',0,"1") 
elif Class == "2": 
    with open('Class 2 Results.csv', 'a') as f: 
     file_writer = csv.writer(f, delimiter=',',lineterminator='\n') 
     file_writer.writerow((name, score))sortcsv('Class 2 Results.csv', 0) 

正如@捅的評論中提到,空白是在Python顯著。這就是縮進必須正確的原因 - 例如,在if聲明中,ifelifelse必須全部處於縮進級別。