未来python3是主流,但还是因为一部分原因,很多项目还在用python2。python3是不兼容python2的,做了一些优化和改进
1.字符编码
python2:ascii编码
python3:unicode编码(默认utf-8)
2.print
python2:print是一个关键字,打印字符串 "abcd",print "abcd"
python3:print是一个函数,可以传递额外的参数,打印字符串"abcd",print("abcd")
3. 类的继承
python3:默认的继承object类,优化了属性和方法的查找顺序(mro算法)
4. super函数
python2:执行父类方法的时候,写法比较复杂,super(A,self).__init__()
python3:简化了写法,super().__init__()
5. 元祖拆包
python2:拆包形式比较单一,只允许左右元素数量相等的拆包
python3:支持很多形式的拆包,比如a,b,*c=range(10),a,*b,c=range(10)
6. 除法运算
python2:/ 代表整除
python3:/ 不再是整除,返回实际的结果,// 代表整除