Python2.x와 Python3.x의 차이

1916 단어

1. print


py2:print 문장, 문장은 인쇄할 물건을 직접 따라갈 수 있음을 의미한다. 만약에 뒤에 연결된 것이 하나의 원조 대상이면py3:print 함수를 직접 인쇄하면 함수는 반드시 괄호를 붙여야 호출할 수 있다고 생각하고 원조 대상을 연결하면 여러 개의 위치 파라미터를 받아들일 수 있고 인쇄할 수 있다.
Python2에서 print를 함수로 사용하려면future 모듈의 print 가져올 수 있습니다function
다음 예는 다음과 같습니다.
# py2
from __future__ import print_function
print("hello", "world")
hello world

2. 함수 입력


py2:input_raw() py3:input()

3. 슈퍼()-클래스의 계승 시 부류를 호출하는 방법


py2: 매개 변수에 기본 클래스를 표시해야 합니다
class A(object):   # Python2.x   object
    pass
class B(A):
    def add(self, x):
        super(B, self).add(x)

py: 매개 변수 없이 호출하면 됩니다
class A:
    pass
class B(A):
    def add(self, x):
        super().add(x)

4. 1/2의 결과


py2: 0 py3 반환: 0.5 반환, int와 long의 차이 없음

5. 인코딩


py2: 기본 인코딩 ascii py3: 기본 인코딩utf-8 또한py2에서 중국어를 사용하기 위해 머리에 coding 설명을 도입하여 사용하지 않음

6. 문자열


https://www.cnblogs.com/dcotorbool/p/8117031.htmlpy2:unicode 형식은 문자열 서열을,str 형식은 바이트 서열을,py3::str 형식은 문자열 서열을,bytes 형식은 바이트 서열을 나타낸다.

7. True 및 False


py2:true와false(알파벳 소문자)는 Python2에서 두 개의 전역 변수로 그 값을 부여하거나 다른 조작을 할 수 있다. 초기 수치는 각각 1과 0이다. 수정은python 디자인의 원칙에 어긋나지만py3:True와False를 변경할 수 있다. 이 변수를py3:True와False로 수정하여 True나False를 변하지 않게 한다.

8.교체기???-->검증 대기 중


py2: range, 사전 대상의 dict.keys(), dict.values() 방법, 맵, Filter, zip 등 목록을 되돌려주는 방법이 많다.또한 교체기는next방법py3을 실현해야 한다: 목록을 되돌려주는 방법을 교체기의 대상으로 바꾸고next를 내장하여 일부러 실현하지 않아도 된다.

9. nonlocal


py2: 중첩 함수에서 변수를 비로컬 변수로 선언할 수 없고 함수에서 글로벌 변수 py3: nonlocal 메소드만 선언할 수 있습니다. 예는 다음과 같습니다.
def func():
    c = 1
    def foo():
        c = 12
    foo()
    print(c)
func()    #1
def func():
    c = 1
    def foo():
        nonlocal c
        c = 12
    foo()
    print(c)
func()   # 12

좋은 웹페이지 즐겨찾기