2017-04-27 223 views
-3

我試圖建立一個elif的語句中,如果用戶點擊其中的回車鍵的代碼將繼續語法錯誤,但我得到恆定的語法錯誤爲什麼這個if語句引起

GTIN = 0 
while True: 
    try: 
     GTIN = int(input("input your gtin-8 number:")) 
     if len(str(GTIN)) == 8: 
      break 
     else: 
      print("make sure the length of the barcode is 8") 
     elif: 
      GTIN=(""): 
+0

命令必須是if,然後(零個或多個)elif,最後是else。同樣'elif'必須有一個條件來檢查'if'的相同方式。 – CoryKramer

+5

'else'必須是最後一個子句,'elif'必須有一個測試。 –

+1

你的代碼中沒有'except'情況。 – roganjosh

回答

2

你在elif之前不能使用else。另一個問題,您必須在您的try中添加except

GTIN = 0 
while True: 
    GTIN = int(input("input your gtin-8 number:")) 
    if len(str(GTIN)) == 8: 
    print("OK: %s" % GTIN) 
    break 
    else: 
    print("make sure the length of the barcode is 8") 

編輯:你不需要ELIF。如果輸入長度爲8,則再次執行。

編輯2:也不需要try exceptps:print(「」)if python 3

+0

仍會產生'SyntaxError'。 – MSeifert

+0

對不起,編輯。你不需要使用elif。 –