본문 바로가기

Basic for AI/파이썬

SytaxError와 Exception의 차이

SytaxError와 Exception의 차이

 

Syntax Error과 Exception은 모두 오류의 일종이다.

error name 의미 해결법
Syntax Error 코드에 문법적 오류로 프로그램이 실행조차 되지 않는 오류 문법적 오류를 해결
Exception 프로그램 실행 중 발생하는 오류 (프로그램에서 처리할 수 없는 특정 상황 발생) 조건문, 예외 구문(try-except) 등을 사용한 예외 처리

 

Exception의 종류

1. 기본 예외:

  • ZeroDivisionError: 0으로 나누려고 할 때 발생합니다.
  • TypeError: 잘못된 자료형에 대한 연산을 수행하려고 할 때 발생합니다.
  • ValueError: 잘못된 값을 입력했을 때 발생합니다.
  • IndexError: 리스트 인덱스가 범위를 벗어났을 때 발생합니다.
  • KeyError: 딕셔너리에 없는 키를 사용했을 때 발생합니다.

2. 입출력 예외:

  • IOError: 입출력 작업 중 오류가 발생했을 때 발생합니다.
  • FileNotFoundError: 파일을 찾을 수 없을 때 발생합니다.

3. 메모리 예외:

  • MemoryError: 메모리 할당에 실패했을 때 발생합니다.

4. 시스템 예외:

  • KeyboardInterrupt: 사용자가 Ctrl+C 키를 누를 때 발생합니다.
  • SystemExit: 프로그램이 종료될 때 발생합니다.

5. 사용자 정의 예외:

 

cf. Runtime error?

해당 내용을 살펴보면서 runtime error에 대한 내용이 나왔는데 이건 뭐 어디 속하는건지 뭔지 헷갈려서 따로 정리.

일반적으로 말하는, syntax error 및 exception을 포함하는 error라는 단어가 Runtime error를 의미하는 것 같다.

 

Runtime error는 프로그램 실행 중 발생하는 모든 오류를 통칭하는 용어. 예외(Exception)는 Runtime Error의 한 종류이지만, 모든 Runtime Error가 예외는 아니다.

 

1. Runtime Error 종류:

  • Syntax Error: 코드 작성 오류 (예: 괄호 누락, 맞춤법 오류)
  • Logical Error: 코드 설계 오류 (예: 무한 루프, 잘못된 알고리즘)
  • Memory Error: 메모리 할당 오류 (예: 메모리 부족, 누수)
  • Exception: 프로그램에서 처리할 수 없는 특정 상황 (예: 0으로 나누기, 없는 키 사용)

2. Runtime Error 발생 원인:

  • 잘못된 코드: 코드 작성 오류, 논리 오류
  • 외부 환경 변화: 예상치 못한 입력 값, 시스템 문제

3. Runtime Error 해결 방법:

  • Syntax Error: 코드를 검토하고 수정
  • Logical Error: 코드 설계를 검토하고 수정
  • Memory Error: 메모리 사용량을 줄이거나 코드를 최적화
  • Exception: try-except 블록을 사용하여 예외를 처리

 

'Basic for AI > 파이썬' 카테고리의 다른 글

파이썬 파일처리(open, close)와 generator  (0) 2024.01.15