파이썬에서 != 연산자와 <> 연산자의 차이점
파이썬에는 두 값이 서로 같지 않은지 확인하는 '같지 않음(not equal)' 비교 연산자가 있습니다. 그런데 역사적으로 두 가지 형태, 즉 !=와 <>가 존재해 왔습니다. 이 둘의 차이점을 버전별로 살펴보겠습니다.
파이썬 2.x에서의 동작
파이썬 2.x 버전에서는 !=와 <> 두 연산자 모두 사용할 수 있으며, 기능상 완전히 동일합니다.
- 두 피연산자(비교 대상 값)가 같지 않으면
True를 반환합니다. - 두 피연산자가 같으면
False를 반환합니다.
예를 들어 다음 코드는 파이썬 2.x에서 모두 정상적으로 동작하며 같은 결과를 출력합니다.
print(1 != 2) # True
print(1 <> 2) # True파이썬 3.x에서의 변경 사항
파이썬 3.x부터는 <> 연산자가 더 이상 지원되지 않습니다. 단순히 권장되지 않는 수준을 넘어 언어 자체에서 완전히 제거되었기 때문에, 이 연산자를 사용하면 SyntaxError(구문 오류)가 발생합니다.
print(1 <> 2)
# SyntaxError: invalid syntax이는 파이썬 3 설계 과정에서 '같지 않음'을 표현하는 방법을 하나로 통일하기 위한 결정으로, 코드의 일관성과 가독성을 높이기 위한 조치였습니다.
결론 및 권장 사항
정리하면 다음과 같습니다.
- 파이썬 2.x:
!=와<>모두 사용 가능하며 동일하게 동작합니다. - 파이썬 3.x:
<>는 제거되어 사용할 수 없고,!=만 지원됩니다.
따라서 어떤 버전의 파이썬에서도 문제없이 동작하는 호환성 좋은 코드를 작성하려면 항상 != 연산자를 사용하는 것이 좋습니다.