Python 2 与Python 3 的区别 整理
(本人刚接触python不久,如果整理中出现错误请及时批评指出,感谢!)
- print函数:Python 3 使用时必须加上括号(),这是两者最常见的区别。
- Unicode:Python 3 默认使用unicode编码。
- 除法计算:Python 3 整数相除也能得到浮点数结果 。
Python 3 :print(1/3) => 0.33333333333
Python 2 :print 1/3 => 0
- 异常:Python 3 只能抛出继承自BaseException的异常。
- xrange:在 Python 3 中,range() 是像 xrange() 那样实现以至于一个专门的 xrange() 函数都不再存在(在 Python 3 中xrange() 会抛出命名异常)。
- 二/八进制:Python 3 中必须强制在进制前面加上0。
- 不等式:Python 3 取消了 ‘<>’,只有‘!=’。
- 表达式:Python 3 必须使用 repr 函数。
- 多个模块改名:Queue => queue ;repr => reprlib;(后面会继续补充)。
- 数据类型:
1、Python 3 取消了long,统一为int。
2、新增了bytes类型,并可与string相互转换。
3、dict的keys/items/values方法返回迭代器,iterkeys函数被废弃,has_key被in取代。
(未完,待补充…)