반응형
NameError에 대한 정리
1. 오류 설명
NameError
는 Python에서 정의되지 않은 변수나 함수, 객체를 호출하려고 할 때 발생하는 오류입니다. 즉, Python이 해당 이름을 찾을 수 없음을 의미합니다.
2. 오류 예시
- 변수 또는 함수가 정의되지 않았거나, 오타가 있는 경우.
- 변수가 선언되기 전에 사용된 경우.
3. 오류 해결책
- 변수가 정의되었는지 확인: 해당 변수가 존재하는지 확인하고, 없는 경우 정의해야 합니다.
- 오타 점검: 변수나 함수 이름에 오타가 있는지 확인합니다.
- 스코프 확인: 변수나 함수가 올바른 스코프(지역 또는 전역) 내에서 정의되었는지 점검합니다.
- 모듈 및 패키지 확인: 필요한 모듈이나 패키지가 제대로 import되었는지 확인합니다.
4. 오류 예제 코드 및 해결 코드
오류 예제 코드 1: 변수가 정의되지 않음
print(my_variable) # NameError 발생: my_variable이 정의되지 않음
해결 코드 1: 변수를 먼저 정의
my_variable = "Hello, Python!"
print(my_variable) # 정상 출력
오류 예제 코드 2: 함수 오타
def greet():
print("Hello!")
great() # NameError 발생: 함수 이름이 잘못됨
해결 코드 2: 올바른 함수 호출
def greet():
print("Hello!")
greet() # 정상 출력
오류 예제 코드 3: 모듈 미임포트
result = math.sqrt(16) # NameError 발생: math 모듈이 import되지 않음
해결 코드 3: 모듈을 import
import math
result = math.sqrt(16) # 정상 실행
print(result) # 출력: 4.0
오류 예제 코드 4: 변수 스코프 문제
def example():
print(local_var) # NameError 발생: 지역 변수는 함수 외부에서 참조할 수 없음
example()
local_var = 10
해결 코드 4: 변수 스코프 확인 및 수정
def example():
local_var = 10
print(local_var) # 정상 실행
example()
이러한 방식으로 NameError
를 해결할 수 있습니다. 필요한 경우 특정 사례에 맞게 코드를 수정하여 사용하세요.
반응형
'Error(Exception) > ERROR-PYTHON' 카테고리의 다른 글
[python] OSError (1) | 2024.11.29 |
---|---|
[python] NotImplementedError (0) | 2024.11.28 |
[python] MemoryError (0) | 2024.11.27 |
[python] KeyboardInterrupt (0) | 2024.11.26 |
[python] KeyError (0) | 2024.11.25 |
댓글