Eof 자바스크립트

| | | | | | | | | | | | | | | | | | | |

Python은 정적으로 유형이 지정된 언어입니다. 이는 코드 작성 방식이 엄격하다는 것을 의미합니다.

코드에서 코드 블록을 완료하는 것을 잊어버린 경우 "구문 오류: 분석 중 예기치 않은 EOF"와 같은 오류가 발생합니다. . 이는 여러 상황에서 발생합니다. 예를 들어 for 루프에 한 줄의 코드를 추가하는 것을 잊었을 때입니다.

이 가이드에서는 이 Python 오류와 이것이 발생하는 이유에 대해 설명합니다. . 이 일반적인 오류를 수정하는 방법을 이해할 수 있도록 몇 가지 샘플 시나리오를 살펴보겠습니다.

SyntaxError: Unexpected EOF during Scan

"SyntaxError: Unexpected EOF while scanning" 오류 모든 코드가 실행되지 않기 전에 소스 코드의 끝에 도달할 때 발생합니다. 이것은 코드의 구조나 구문에 오류가 있을 때 발생합니다.

EOF는 파일 끝을 의미합니다. Python 프로그램의 마지막 문자를 나타냅니다.

Python은 다음과 같은 경우 코드의 각 블록을 실행하기 전에 파일 끝에 도달합니다.

  • 다음과 같은 경우 for 루프, while 루프 또는 함수와 같은 특수 명령문으로 코드를 래핑합니다.
  • 프로그램에서 코드 행의 모든 괄호를 닫지 마십시오.

이러한 오류를 하나씩 살펴보겠습니다. 이 오류가 생성되는 다른 시나리오가 있지만 위에서 언급한 시나리오가 가장 일반적입니다.

예시 n. 1: 특수 선언에 코드 포함

For 루프 , if 문 , while 루프 함수 에는 적어도 하나가 필요합니다. 지침에 있는 코드 줄. 특수 명령어에 코드 줄을 포함하는 것을 잊으면 예기치 않은 EOF 오류가 발생합니다.

목록을 인쇄하는 for 루프 확인 레시피의 재료 수:

바닐라 쇼트브레드 레시피의 재료 목록을 저장하는 "성분"이라고 합니다. for 루프를 사용하여 목록의 각 성분을 반복합니다. 코드를 실행하고 어떤 일이 발생하는지 확인하십시오.

"for" 루프에 코드를 추가하지 않았습니다. 오류가 발생합니다. 이 동일한 오류는 명령문에 코드를 포함하지 않고 while 루프, if 문 또는 함수를 정의하는 경우에도 발생합니다.

이 문제를 해결하기 위해 다음 코드를 추가해 보겠습니다. 각 구성 요소를 콘솔에 인쇄할 수 있도록 print() 문을 추가해 보겠습니다.

코드를 실행해 봅시다:

저희 코드는 각 재료를 인쇄합니다. 성분 목록입니다. 이것은 코드 블록이 성공적으로 완료되었음을 알려줍니다.

그렇지 않은 경우 특수 선언에 코드를 추가하려면 " pass " 선언을 자리 표시자로 사용합니다. 다음 코드를 고려하십시오.

이 코드는 값을 반환하지 않습니다. def는 루프를 종료했지만 "pass" 명령은 루프가 아직 할 일이 없다고 프로그램에 알려줍니다. 이 키워드는 개발자가 프로그램의 프레임워크를 만들 때 자주 사용됩니다. 프로그램의 구조가 결정되면 "통과" 명령이 해당 코드로 대체됩니다.

예시 번호. 2: 괄호가 닫히지 않음

한 줄의 코드에서 모든 괄호를 닫는 것을 잊었을 때 " Unexpected EOF while parsing" 오류가 발생합니다.

다음을 인쇄하는 프로그램을 작성하십시오. 콘솔에 레시피 정보. 레시피에 대한 정보가 포함된 몇 가지 변수를 정의하여 시작합니다.

.format () 메서드를 사용하여 문자열 형식을 지정합니다.

{} 값 ‚Äã‚Äã는 .format () 문에서 각각의 값으로 대체됩니다. 이것은 우리의 문자열이 다음과 같이 말할 것임을 의미합니다.

코드 실행:

c의 print( ) 줄에서 ode, 우리는 v 대괄호의 단일 세트를 닫고 두 세트의 대괄호를 엽니다. 따라서 오류가 반환되었습니다.

코드 줄 끝에 마지막 괄호(")")를 추가하여 이 문제를 해결합니다. ():

이 코드 줄은 하나가 아닌 두 개의 괄호로 끝납니다. 이제 모든 괄호가 닫힙니다.

자 코드를 다시 실행해 보세요.

코드가 제대로 작동합니다.

{} 대괄호를 사용하여 사전을 닫는 것을 잊은 경우에도 이와 동일한 오류가 발생합니다. 이 오류는 괄호[]를 사용하여 목록을 닫는 것을 잊은 경우에도 발생합니다.

결론

파이썬 인터프리터가 각 코드 줄이 실행되기 전에 프로그램이 종료됩니다.

이 오류를 해결하려면 먼저 각 if 문, for 루프, while 루프 및 함수에 코드가 포함되어 있는지 확인하십시오.둘째, 다음을 확인하십시오. 코드의 모든 괄호를 닫으십시오.

이제 이 구문 오류를 Python Professional 로 수정할 준비가 되었습니다!