Python 2는 프로그래밍 언어 Python의 두 번째 주요 버전 계열을 일컫는다. 공식적으로는 2.x 형태의 릴리즈군으로, 2000년 10월 16일에 처음 발표된 Python 2.0을 시작으로 여러 부수 버전이 추가되었다. 가장 널리 사용된 최종 버전은 2010년 7월에 출시된 Python 2.7이며, 이후 2020년 1월 1일에 공식 지원이 종료(EOL, End‑of‑Life)되었다.
주요 특징 및 차이점
| 구분 | Python 2 | Python 3 |
|---|---|---|
| 출시 연도 | 2000 년 (2.0) | 2008 년 (3.0) |
| 문자열 | str이 바이트 문자열, unicode 타입 별도 |
str이 유니코드, 바이트는 bytes 타입 |
| 정수 나눗셈 | / 연산자가 정수 나눗셈(버림) 수행 |
/ 연산자가 실수 나눗셈 수행, //가 정수 나눗셈 |
| print 문 | print "hello"와 같은 구문 사용(문) |
print("hello")와 같은 함수 형태 사용 |
| 입력 함수 | raw_input()(문자열), input()(eval) |
input()(문자열)만 제공 |
| 표준 라이브러리 | 일부 모듈·함수가 Python 3와 호환되지 않음 | Python 2와 호환되지 않는 최신 기능 포함 |
사용 맥락
- 레거시 시스템: Python 2 기반으로 작성된 오래된 애플리케이션이나 스크립트는 지원 종료 이후에도 유지보수를 위해 여전히 사용될 수 있다.
- 교육 및 참고 자료: 초기 교육용 교재나 온라인 튜토리얼 중 일부는 Python 2를 기준으로 설명하고 있다. 이러한 경우 최신 Python 3 환경에 맞게 코드를 변환해야 한다.
- 마이그레이션 도구:
2to3와 같은 자동 변환 도구가 제공되어 Python 2 코드를 Python 3 코드로 변환하는 작업을 지원한다.
어원 및 명명
- Python이라는 이름은 영국 코미디 그룹 “Monty Python’s Flying Circus”에서 영감을 받아 Guido van Rossum이 1991년에 만든 언어의 이름이다.
- 2는 주요 버전 번호이며, Python 2는 Python 1.x 계열과 구별하기 위해 도입된 번호 체계이다.
현재 상태
Python 2는 공식적인 보안 업데이트 및 버그 수정이 중단되었으며, 대부분의 주요 프로젝트와 라이브러리는 Python 3 전용으로 전환되었다. 새로운 개발에서는 Python 3를 사용하도록 권고된다.