프로그래밍언어/파이썬[Error]
[파이썬][Error] 023. NameError - name 'MyClas' is not defined
about_IT
2025. 5. 26. 02:01
728x90
NameError: name 'MyClas' is not defined
오류는 클래스 이름을 잘못 입력했을 때 발생하는 대표적인 오타 기반의 오류입니다. 예를 들어 MyClass
라는 클래스를 정의하고자 했지만 코드 상에서 MyClas
처럼 철자가 누락되거나 잘못 입력되었을 경우, 파이썬은 해당 이름이 존재하지 않는다고 판단해 NameError
를 발생시킵니다.
이러한 오류는 특히 클래스 또는 함수 이름처럼 사용자 정의 이름이 긴 경우, 타이핑 실수로 인해 자주 발생합니다. 또한 대소문자를 구분하는 파이썬의 특성상 철자는 정확히 일치해야 하며, 단순히 비슷한 철자라고 해서 자동으로 인식해주지 않습니다.
● 오류 발생 예시
class MyClass:
pass
obj = MyClas()
이 코드는 MyClas
라는 이름이 정의되지 않았기 때문에 다음과 같은 오류가 발생합니다.
NameError: name 'MyClas' is not defined
● 올바른 코드 예시
class MyClass:
pass
obj = MyClass()
정확한 클래스 이름을 사용하면 NameError
없이 객체가 생성됩니다.
● 자주 하는 실수
- 클래스 이름 또는 함수 이름의 철자 실수
- 대소문자 혼동 (예:
myclass
vsMyClass
) - 클래스 정의 순서보다 먼저 호출
● 디버깅 팁
- 오타 자동 완성 기능을 갖춘 IDE 사용
- 코드 상에서 이름이 선언된 위치를 먼저 확인
dir()
또는globals()
로 현재 정의된 이름 확인
● 결론
NameError - name 'MyClas' is not defined
는 단순한 오타지만, 프로그램 실행을 즉시 중단시키는 오류입니다. 클래스나 함수의 이름을 정확하게 일치시키는 습관을 들이고, 자동 완성이나 정적 검사 도구를 활용하면 이런 오류를 효과적으로 방지할 수 있습니다.
728x90