Python 3.0은 2008년 12월에 출시되었습니다. 이전 버전의 특정 결함을 수정하도록 설계되었습니다. Python 3의 기본 원칙은 "오래된 작업 방식을 제거하여 기능 중복 감소"였습니다. Python 3.0은 이전 버전과의 호환성을 제공하지 않습니다. 즉, 버전 2.x 구문을 사용하여 작성된 Python 프로그램은 Python 3.x 인터프리터에서 실행되지 않습니다. 버전 2.7은 Python 2.x 시리즈의 마지막 주요 릴리스입니다.
이 두 버전의 사용법에는 몇 가지 차이점이 있지만 가장 분명한 것은 아래에 언급되어 있습니다. -
인쇄 Python 2.7에서는 키워드이지만 Python 3.x에서는 내장 함수로 포함되었습니다. 결과적으로 괄호는 Python 3 코드에서 사용하는 동안 필수입니다.
print “Hello World” # is acceptable in Python 2 but not in Python 3 print (“Hello World”) #acceptable in Python 2 and Python 3
raw_input() − Python 2.7의 기능은 더 이상 사용되지 않습니다. input() 함수는 수신된 데이터를 문자열로만 취급합니다.
정수 나누기 − 기능이 Python 3에서 변경되었습니다. Python 2.x에서는 5/2가 2이지만 Python 3.x에서는 5/2가 2.5입니다.
유니코드 − Python 3.x에서 문자열은 기본적으로 유니코드입니다. Python 2.x에서 문자열은 'u'를 접두사로 추가하여 명시적으로 유니코드로 정의해야 합니다(예:u'hello')
긴 정수 − Python 3.x에서 정수 객체는 기본적으로 long입니다. Python 2.x에서 정수 뒤에 L(예:100L)을 붙여야 합니다.