python2 和Python3 的区别

一、python2 的代码混乱 重复较多 冗余 因为当时来编写的人有C 语言的大牛 和 java的大牛等各种大神 所以里面都含有各种语言的影子

python3 经过龟叔的一个暑假的整理 终于在2018年11月 统一了代码 源码规范 清晰 简单优美。

二、python3 print("内容")

python2 ptint() 或者print '内容'

三、python3 编码:utf-8

python2编码: 默认编码:ascii 解决办法:在首行 # -*- encoding:utf-8-*-

四、用户交互 input

python2: raw-input()

python3:input ()

五、python2x :unicode 默认2个字节表示一个字符 可以在LINUX 编译安装时做调整

python3x:unicode 默认是4个字节表示一个字符

六、python2x 没有nonlocal

python3x 加入的

七 、python3x 新建的包里面的init文件如果你删除该文件 包照样可以被调用

python2x 新建的包如果没有init文件 则包不能够被调用 直接报错

八、python2 中的经典类 遍历方法是以深度优先 新式类是以广度优先

python3 中不存在经典类 所有的类都是新式类 所以都是广度优先