Python 2.x는 레거시이고 Python 3.x는 언어의 현재이자 미래입니다.
3.x 릴리스에서만 사용할 수 있고 Python 2.x에서는 사용할 수 없는 기능의 전체 목록 −
-
문자열은 기본적으로 유니코드입니다.
-
깔끔한 유니코드/바이트 분리
-
예외 체이닝
-
함수 주석
-
키워드 전용 인수 구문
-
확장 튜플 압축 해제
-
비지역 변수 선언
몇 가지 주요 차이점
-
print - Python 2에서 "print"는 함수가 아닌 명령문으로 처리됩니다. 인쇄하려는 텍스트를 괄호로 묶을 필요는 없지만 원할 경우 가능합니다. Python 3에서 인쇄는 함수입니다. 즉, 인쇄에 필요한 항목을 괄호 안에 함수에 전달해야 합니다.
-
목록 이해의 변수 - Python2.x에서 목록 이해에서 반복되는 변수에 전역 변수와 동일한 이름을 지정하면 전역 변수의 값이 변경될 수 있습니다.
-
정수 나누기 - Python 2는 소수점 이하 자릿수 없이 입력하는 숫자를 정수로 취급하므로 나누기 중에 예기치 않은 결과가 발생할 수 있습니다. 예를 들어,
Python 3 및 Python 2에서 3/2의 결과는 각각 1.5 및 1입니다. Python 3에서 정수 나누기를 수행하려면 // 연산자를 사용해야 합니다. 그리고 Python 2에서 fload 나눗셈의 경우 표현식에서 임의의 숫자 뒤에 소수점과 0을 추가해야 합니다.
Python 2에서 변경된 기능이 더 많으며 이 웹사이트를 참조로 사용하여 Python 3의 새로운 기능을 자세히 알아볼 수 있습니다. https://docs.python.org/3/whatsnew/피>