做为一个py3土著,并非很关心这个问题,可是总有人隔三差五问这个问题,仍是捋了一下。函数
这里列出几个主要区别:code
在py2中,print是一个语句,不带括号,也能够带括号。
在py3中,print是一个函数,必须带括号调用。utf-8
# Python 2.7 3 / 2 = 1 3 // 2 = 1 3 / 2.0 = 1.5 3 // 2.0 = 1.0 # Python 3 3 / 2 = 1.5 3 // 2 = 1 3 / 2.0 = 1.5 3 // 2.0 = 1.0
在py2中有ascii str(),单独的unicode(),可是没有bytes类型。
在py3中有了unicode string(utf-8),以及bytes和bytearray类型。ci
在py3中range()代替了xrange(),xrange()被去掉。unicode
在py3中统一了input()方法,输出类型所有为str。文档
在py3中提供了内置函数next()来获取迭代器元素,去掉了.next()方法。input
在py3中,as关键字不能省。string
这里仅列出了一些简单常见的,其它的请自行撸文档..迭代器