프로그래밍언어/파이썬[Error]
[파이썬][Error] 113. NameError - name 'xrange' is not defined
about_IT
2025. 6. 1. 01:00
728x90
NameError: name 'xrange' is not defined
오류는 파이썬 3에서 xrange()
함수를 사용하려고 할 때 발생합니다. xrange()
는 파이썬 2에서 사용되던 함수로, 파이썬 3에서는 range()
로 통합되었습니다.
파이썬 2에서는 xrange()
가 메모리를 절약하기 위해 반복 가능한 객체를 반환했지만, 파이썬 3에서는 range()
가 동일한 기능을 수행하도록 변경되었습니다.
● 오류 발생 예시
for i in xrange(5):
print(i)
위 코드는 파이썬 3 환경에서 실행 시 xrange
가 정의되어 있지 않아 NameError
를 발생시킵니다.
● 주요 원인
- 파이썬 2 코드를 파이썬 3에서 실행
xrange
를 그대로 사용하는 경우- 파이썬 3 환경에서 호환성 확인 없이 이식한 코드
● 해결 방법
xrange()
→range()
로 변경- 필요 시
list(range())
를 사용해 리스트 변환 - 파이썬 2와의 차이점 인지 후 코드 수정
● 예시 코드 (정상 처리)
for i in range(5):
print(i)
● 결론
xrange()
는 파이썬 3에서 제거된 함수이므로 반드시 range()
로 대체해야 합니다. 파이썬 2에서 작성된 코드를 이식할 때는 함수 호환성을 반드시 확인해야 합니다.
728x90