파이썬 실행 오류 해결 방법 10가지
파이썬 코드 실행 중 발생할 수 있는 다양한 오류와 그 해결 방법을 자세히 설명합니다. 오류 메시지의 원인과 해결책을 정리해 실수를 줄이고 코드 실행을 원활하게 만드세요.
1. SyntaxError: 잘못된 문법 오류
원인
- 코드의 문법이 잘못되었을 때 발생합니다.
- 괄호, 따옴표, 콜론 등이 빠졌거나 잘못 사용되었을 때 흔히 나타납니다.
해결 방법
✅ 오류 메시지를 확인하여 문제 발생 위치를 찾습니다.
✅ 문법에 맞는지 다시 확인하고 수정합니다.
✅ 코드 에디터의 자동완성 기능을 활용해 올바른 문법을 유지합니다.
예제:
print("Hello World" # SyntaxError: 괄호가 닫히지 않음
수정:
print("Hello World") # 괄호를 닫아 해결
2. IndentationError: 들여쓰기 오류
원인
- 들여쓰기(공백, 탭)가 잘못되었거나 일관되지 않을 때 발생합니다.
- 파이썬은 들여쓰기를 사용해 코드 블록을 구분하므로 반드시 맞춰야 합니다.
해결 방법
✅ 모든 들여쓰기가 동일한 방식(스페이스 또는 탭)으로 되어 있는지 확인합니다.
✅ PEP8 권장사항에 따라 공백 4칸을 사용합니다.
✅ IDE나 에디터의 자동 포맷 기능을 활용해 들여쓰기를 정리합니다.
예제 (오류 발생 코드):
def my_function():
print("Hello") # IndentationError 발생
수정 코드:
def my_function():
print("Hello") # 올바른 들여쓰기 적용
3. NameError: 정의되지 않은 변수 사용
원인
- 변수가 선언되지 않은 상태에서 호출될 때 발생합니다.
- 변수명을 오타로 잘못 입력했을 때도 나타날 수 있습니다.
해결 방법
✅ 변수를 선언한 후 사용했는지 확인합니다.
✅ 변수를 사용하기 전에 값이 할당되었는지 확인합니다.
✅ 변수명을 정확하게 입력했는지 검토합니다.
예제 (오류 발생 코드):
print(my_variable) # NameError 발생 (선언되지 않음)
수정 코드:
my_variable = "Hello"
print(my_variable) # 정상 실행
4. TypeError: 데이터 타입 불일치 오류
원인
- 서로 다른 타입의 데이터를 연산하려고 할 때 발생합니다.
해결 방법
✅ 데이터 타입을 확인하고 올바르게 변환합니다.
✅ type() 함수를 사용하여 변수의 타입을 확인합니다.
예제 (오류 발생 코드):
number = 10
text = "20"
result = number + text # TypeError 발생
수정 코드:
result = number + int(text) # 문자열을 정수로 변환하여 해결
5. IndexError: 인덱스 범위 초과 오류
원인
- 리스트, 튜플 등의 인덱스를 초과해서 접근할 때 발생합니다.
해결 방법
✅ len() 함수를 사용해 인덱스 범위를 초과하지 않도록 확인합니다.
예제 (오류 발생 코드):
my_list = [1, 2, 3]
print(my_list[3]) # IndexError 발생 (인덱스 3은 존재하지 않음)
수정 코드:
if len(my_list) > 3:
print(my_list[3]) # 범위 확인 후 실행
6. KeyError: 딕셔너리 키 오류
원인
- 존재하지 않는 키를 사용해 딕셔너리 값을 가져오려 할 때 발생합니다.
해결 방법
✅ get() 메서드를 사용해 키가 존재하지 않을 경우 기본값을 반환하도록 처리합니다.
예제 (오류 발생 코드):
my_dict = {"name": "Alice"}
print(my_dict["age"]) # KeyError 발생
수정 코드:
print(my_dict.get("age", "No age data")) # 기본값 반환
7. ValueError: 잘못된 값 오류
원인
- 특정 함수에서 지원되지 않는 값을 사용할 때 발생합니다.
해결 방법
✅ try-except 구문을 사용해 예외 처리를 추가합니다.
예제 (오류 발생 코드):
num = int("hello") # ValueError 발생 (문자열을 숫자로 변환할 수 없음)
수정 코드:
try:
num = int("hello")
except ValueError:
print("잘못된 값입니다.")
8. ModuleNotFoundError: 모듈을 찾을 수 없음
원인
- import 문으로 불러오려는 모듈이 설치되지 않았을 때 발생합니다.
해결 방법
✅ pip install을 사용해 필요한 모듈을 설치합니다.
예제 (오류 발생 코드):
import numpy # ModuleNotFoundError 발생 (설치되지 않음)
수정 코드:
pip install numpy # 터미널에서 실행
import numpy # 정상 실행
9. ZeroDivisionError: 0으로 나누기 오류
원인
- 숫자를 0으로 나누려고 할 때 발생합니다.
해결 방법
✅ 나누기 전에 분모가 0인지 확인하는 조건문을 추가합니다.
예제 (오류 발생 코드):
result = 10 / 0 # ZeroDivisionError 발생
수정 코드:
denominator = 0
if denominator != 0:
result = 10 / denominator
else:
print("0으로 나눌 수 없습니다.")
10. FileNotFoundError: 파일을 찾을 수 없음
원인
- 존재하지 않는 파일을 열려고 할 때 발생합니다.
해결 방법
✅ os.path.exists()로 파일이 존재하는지 확인 후 실행합니다.
예제 (오류 발생 코드):
with open("missing_file.txt", "r") as file:
data = file.read() # FileNotFoundError 발생
수정 코드:
import os
if os.path.exists("missing_file.txt"):
with open("missing_file.txt", "r") as file:
data = file.read()
else:
print("파일이 존재하지 않습니다.")
마무리
파이썬 코드 실행 중 발생할 수 있는 다양한 오류를 사전에 방지하면 프로그램의 안정성을 높일 수 있습니다. 오류가 발생했을 때는 오류 메시지를 확인하고, 원인을 분석한 후 적절한 해결 방법을 적용하세요.
'Study' 카테고리의 다른 글
밸브 기호, 눈으로 구별하는 구조 해석법 (0) | 2025.04.22 |
---|---|
순수제조 시스템 완전 가이드 7가지 종류와 구조를 알면 물이 달라진다 (0) | 2025.04.10 |
반도체 공정에서 진공 펌프의 역할과 종류, 그리고 최신 기술 동향 🏭🔬 (0) | 2025.03.07 |
VLOOKUP INDEX MATCH 함수를 활용한 방법 (0) | 2025.02.28 |
INDEX 함수와 MATCH 함수 사용법 완벽 정리 (0) | 2025.02.26 |