一、py2中,print后面接的是一个元组对象,print是一条语句;py3中,print是一个函数,可以接收多个参数
二、Py2默认的编码是asscii,所以经常会遇到编码问题;py3编码方式默认UTF-8
三、py2中,字符串有两个类型,一个是Unicode,一个是str,前者表示文本字符串,后者表示字节序列,但是两个并没有明显区别;但是py3中做了明显的界限,str表示字符串,byte表示字节序列,任何需要写入文本或者网络传输的数据都只接受字节序列
四、py2中True和False是两个全局变量,可以指向其他对象;py3中True和False是两个关键字,永远指向两个固定的对象,不允许重新被赋值
五、在py2中很多返回列表对象的内置函数和方法在py3中都改成了返回类似于迭代器的对象,因为迭代器的惰性加载特性使得操作大数据更有效率。py2中的range和py3中的xrange合并成了range.
六、Python3 中的模块组织更加清晰,类更加先进,还引入了异步IO
七、py2中有long类型,py3中没有long类型,只有int类型;py2中的除法,结果为int类型,小数向下取整,py3中的除法,结果为float类型,最多保留16位小数,整数除法是//