파이썬2는 2.7을 끝으로 지원이 중단되면서 파이썬3가 주로 쓰이고 있다. macOS에서는 파이썬2가 실행은 되지만, 미래의 맥OS에는 서비스되지 않을 것이라고 경고매세지가 뜬다. 그럼에도 파이썬2를 대략적으로라도 알아야 하는 이유는 현업에서 아직도 파이썬2로 작성된 코드가 존재하는 경우가 있기 때문이다.
파이썬2에서는 함수형, double quotes형 둘 다 사용할 수 있었으나, 파이썬3에서는 함수인 프린트만 작동하고, double quotes는 사용할 수 없다.
# python2
print "this is ver.2"
print("this is ver.2")
print 2
# python3
print("this is ver.3")
print(3)
파이썬2에서는 정수/정수는 무조건 내림한 정수다. 파이썬3는 정수/정수는 무조건 실수이고, 소숫점이 없어도 실수화한 값을 리턴한다.
# python2
5/2 > 2
2/2 > 1
1/2 > 0
# python3
5/2 > 2.5
2/2 > 1.0
파이썬2에서는 range함수를 객체로 선언하면 자동으로 리스트화 되지만, 파이썬3에서는 list함수에 넣어야 리스트 타입이 된다.
# python2
a = range(10)
print(a)
> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# python3
a = range(10)
print(a)
> range(0, 10)
b = list(range(10))
print(b)
> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]