티스토리 뷰

반응형

1. NameError : 정의되지 않은 변수를 사용하려고 할 때 발생

print(x)에서 x가 정의되지 않았다면 NameError: name 'x' is not defined가 발생

 

 

2. IndexError : 리스트의 인덱스가 범위를 초과할 때 발생

numbers = [1, 2, 3];

print(numbers[4])에서 IndexError: list index out of range가 발생

 

 

3. TypeError : 잘못된 데이터 타입을 사용하려고 할 때 발생

print("Age: " + 25)에서 TypeError: must be str, not int가 발생

 

 

4. SyntaxError : 문법 오류가 있을 때 발생

if x > 0 print(x)에서 SyntaxError: invalid syntax가 발생

 

 

5. IndentationError : 코드 블록의 들여쓰기가 잘못되었을 때 발생

if True:
print("Hello")  # IndentationError: expected an indented block

 

 

6. ValueError : 함수에 잘못된 값을 전달할 때 발생

int("abc")에서 ValueError: invalid literal for int() with base 10: 'abc'가 발생

 

 

7. AttributeError : 객체에 존재하지 않는 속성에 접근하려고 할 때 발생

x = 5; x.append(3)에서 AttributeError: 'int' object has no attribute 'append'가 발생

 

 

8. KeyError : 딕셔너리에서 존재하지 않는 키에 접근하려고 할 때 발생

my_dict = {'a': 1}; print(my_dict['b'])에서 KeyError: 'b'가 발생

 

 

9. ZeroDivisionError : 0으로 나누려고 할 때 발생

print(10 / 0)에서 ZeroDivisionError: division by zero가 발생

 

 

10. ImportError : 모듈을 찾을 수 없거나 잘못된 이름으로 가져오려고 할 때 발생

import non_existing_module에서 ImportError: No module named 'non_existing_module'가 발생

 

 

11. StopIteration : 제너레이터가 더 이상 반환할 값이 없을 때 발생

gen = (x for x in range(3))
print(next(gen))  # 0
print(next(gen))  # 1
print(next(gen))  # 2
print(next(gen))  # StopIteration

 

 

12. FileNotFoundError : 존재하지 않는 파일을 열려고 할 때 발생

open('non_existing_file.txt')에서 FileNotFoundError: [Errno 2] No such file or directory: 'non_existing_file.txt'가 발생

 

 

13. OverflowError : 숫자가 표현할 수 있는 범위를 초과할 때 발생

print(10**10000)에서 OverflowError가 발생

 

 

14. MemoryError : 메모리가 부족할 때 발생

대량의 데이터를 처리할 때 메모리가 부족하면 MemoryError가 발생

 

 

15. RecursionError : 재귀 호출이 너무 깊어질 때 발생

def recursive_function():
    return recursive_function()
recursive_function()  # RecursionError: maximum recursion depth exceeded

반응형