2014-04-21 1 views
-6

난 내 ELIF 문에 잘못된 구문을 데 이유를 heres 코드 :하기 Elif 잘못된 구문 파이썬

while correct_turns != len(word): 
     if correct_turns == len(word): 
      finish() 
     guess = input("Please guess a letter from above: ") 
     elif guess in word and not LettersUnused: 
      used_letter(guess,display,LettersUnused) 
     elif guess in word and LettersUnused: 
      correct(guess,display,correct_turns,LettersUnused) 
     elif guess in LettersUnused and not word: 
      incorrect(guess,display,LettersUnused) 
     elif guess not in LettersUnused: 
      used_letter(guess,display,LettersUnused) 
     elif len(guess)>1: 
      guess_word(guess) 
+5

코드에 변화를 주었고 초기에 문제가 발생한 부분을 수정하여 2 가지 대답을 해결할 수 없습니다. 정말로 그렇게해서는 안됩니다. 첫 번째 오류가 지난 경우 다른 질문을 게시하십시오. – jsbueno

답변

2

첫 번째 elif 그냥 들여 쓰기를 지정해, if해야합니다. elif은 실제로 처음에는 if과 관련이 없습니다.

2

while 루프 조건부로 인해 루프가 입력되지 않기 때문에 처음에는 if이 필요하지 않습니다.

다른 줄을 사이에두고 if 블록을 '계속 진행'할 수 없습니다. 새 블록을 시작하려면 elifif으로 변경하십시오. 다른 if 문도 실행되지 않으므로 삭제할 수 있습니다.

+0

이제는 들여 쓰기에서 탭과 공백이 일관성없이 사용됩니다. iv'e는 그것을 검사했고 tabify 영역을 사용하여 수정했지만 아무것도 작동하지 않습니다. (그 첫 번째 경우) –

+1

@ Programer4life : 정말 탭을 사용해서는 안됩니다. 'python -tt scriptname.py'를 사용하여 스크립트를 실행하고 발견 한 모든 것을 수정하십시오. –

+0

물론 파이썬 파일을 편집 할 때 편집기 프로그램이 탭 _at all_을 사용하지 않도록 설정하십시오 (매우 중요합니다) – jsbueno

관련 문제