>  기사  >  백엔드 개발  >  python2가 왜 3이 되었나요?

python2가 왜 3이 되었나요?

silencement
silencement원래의
2019-05-15 10:22:522912검색

초심자가 접하게 될 질문은 왜 Python2가 Python3이 되었습니까? Python2와 Python3 중 어느 것이 더 좋고, 어떤 것을 배워야 합니까?

python2가 왜 3이 되었나요?

Python 서클에서는 Python 2와 Python 3에 대한 논쟁이 계속되고 있으며 항상 차례로 상승하고 있습니다. 많은 프로젝트에서 Python 2 및 Python 3와의 호환성이 어느 정도 달성되었지만 둘 사이의 문제는 여전히 피할 수 없으며 프로그래밍 커뮤니티가 주목해야 할 핵심 사항 중 하나로 남아 있습니다.

현재 상황

Python 코어 팀은 2020년에 Python 2 지원을 중단하고 모든 노력을 기울일 계획입니다. Between Python 3에 대한 그들의 노력. 익숙한 도구들이 많이 보이셨나요? 가까운 미래에는 이러한 도구에서 Python 3을 사용해야 하고 실제로 Python 2 사용을 포기해야 합니다. 하지만 아직 2년이나 남았으니 늦지 않았습니다. 관심 있는 사람들은 코드 수정 작업을 위해 Python 2부터 Python 3까지 다양한 도구에 투자할 수도 있습니다. Python 버전 3.0은 이전 버전의 Python에 비해 주요 업그레이드입니다. Python3은 미래의 트렌드임에 틀림없지만, 이전 버전과의 호환성을 지원하지 않습니다. 즉, python2.7 버전에서 작성한 코드를 python3에서 직접 실행할 수 없습니다.

Python3의 핵심

1. print는 print()

print가 됩니다. Python 2에서는 단지 명령문일 뿐이며, 뒤따르는 추가 작업을 출력하는 것 외에는 아무것도 할 수 없습니다. . print()를 함수로 사용하면 다양한 키워드 인수를 추가하여 표준 동작을 개선하고 더 많은 추가 작업을 활성화할 수 있습니다.

2. 기본적으로 문자열은 유니코드 인코딩으로 변환됩니다.

Python 개발자가 자주 직면하는 "함정"은 문자열 인코딩 문제입니다. 수많은 Python 개발자들이 유니코드와 종종 ASCII 문자열을 다룰 때 하루나 이틀 이상 이 문제에 직면했습니다.

이러한 유형의 문제는 Python 3.x에서는 자주 발생하지 않습니다. 문자열은 기본적으로 유니코드 인코딩으로 설정되며 사용자는 더 이상 유니코드 및 ASCII/유니코드가 아닌 문자열이라는 용어를 사용할 필요가 없습니다. Python 3에서는 유니코드 문자열과 8비트 문자열 대신 텍스트 및 (이진) 데이터 개념을 사용합니다. 모든 텍스트는 유니코드로 인코딩되며, 인코딩된 유니코드는 이진 데이터로 표시됩니다.

3. 업데이트된 정수

(1) 단일 정수 유형

은 int와 long의 통합을 달성합니다. int를 사용하여 기본 정수 크기를 초과하면 더 이상 OverflowError 예외가 발생하지 않습니다. Python 3.0에서는 long 유형이 사라졌고 접미사 L은 더 이상 사용되지 않습니다.

(2) 나누기 변경 사항

두 개의 피연산자가 주어지면 "/"는 항상 부동 소수점 숫자를 반환하고 "//"는 항상 하향 나누기를 의미합니다.

4. Python3의 소스 코드는 기본적으로 UTF-8로 인코딩되어 있으므로 이제 중국어 인코딩을 변환할 필요 없이 중국어를 직접 사용하고 출력할 수 있습니다.

위 내용은 python2가 왜 3이 되었나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.